Module it-multipart

Allows iterating over multipart messages found in a HTTP request/

Example

import http from 'http'
import multipart from 'it-multipart'

http.createServer(async (req, res) => {
if (req.method === 'POST' && req.headers['content-type']) {
for await (const part of multipart(req)) {
console.log(`part with HTTP headers ${part.headers}`)

// nb. part.body must be consumed before the next part is emitted
for await (const chunk of part.body) {
console.log(`part with content ${part.name} contents:`, chunk.toString())
}
}

console.log('finished parsing')
res.writeHead(200)
res.end()
}

res.writeHead(404)
res.end()
}).listen(5001, () => {
console.log('server listening on port 5001')
})

it-multipart

codecov CI

Async iterable http multipart message parser

About

Allows iterating over multipart messages found in a HTTP request/

Example

import http from 'http'
import multipart from 'it-multipart'

http.createServer(async (req, res) => {
if (req.method === 'POST' && req.headers['content-type']) {
for await (const part of multipart(req)) {
console.log(`part with HTTP headers ${part.headers}`)

// nb. part.body must be consumed before the next part is emitted
for await (const chunk of part.body) {
console.log(`part with content ${part.name} contents:`, chunk.toString())
}
}

console.log('finished parsing')
res.writeHead(200)
res.end()
}

res.writeHead(404)
res.end()
}).listen(5001, () => {
console.log('server listening on port 5001')
})

Install

$ npm i it-multipart

API Docs

License

Licensed under either of

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Index

Interfaces

Functions