2.0.0 • Published 4 years ago

@multipart/form v2.0.0

Weekly downloads
43
License
AGPL-3.0
Repository
github
Last release
4 years ago

@multipart/form

npm version

@multipart/form is A Node.JS Class To Create Multipart/Form-Data Requests With Files and Fields.

yarn add @multipart/form
npm install @multipart/form

Table Of Contents

API

The package is available by importing its default class:

import Form from '@multipart/form'

class Form

The form class maintains an internal buffer with data that can be sent in a multipart/form-data request. It can append fields and files, and when a file path is given, it will be read from the file system and its contents will be added to the form data.

Form: Accumulates data in fields and returns the complete body.

FormConfig: Options for the constructor.

NameTypeDescriptionDefault
boundarystringThe hard-coded boundary for the requests.u2KxIV5yF1y+xUspOQCCZopaVgeV6Jxihv35XQJmuTx8X3sh

AddFileOptions: Options for adding files.

NameTypeDescriptionDefault
typestringThe Content-Type description.application/octet-stream
noCachebooleanWhether to not cache read files.false
filenamestringThe filename property for Content-Disposition description. By default, will be same as the path argument.-
import Form from '@multipart/form'

(async () => {
  const form = new Form()
  await form.addFile(`test/fixture/test.txt`, 'file')
  form.addSection('hello', 'world')
  console.log(form.data)
})()
--u2KxIV5yF1y+xUspOQCCZopaVgeV6Jxihv35XQJmuTx8X3sh
Content-Disposition: form-data; name="file"; filename="test/fixture/test.txt"
Content-Type: application/octet-stream

a test file

--u2KxIV5yF1y+xUspOQCCZopaVgeV6Jxihv35XQJmuTx8X3sh
Content-Disposition: form-data; name="hello"

world
--u2KxIV5yF1y+xUspOQCCZopaVgeV6Jxihv35XQJmuTx8X3sh--

Copyright & License

GNU Affero General Public License v3.0