form-data-body

    0.1.0 • Public • Published

    form-data-body

    npm package version Travis build status npm package downloads code style license

    A tiny, dependency-free node module for generating a form's multipart/form-data body for a POST request.

    This is meant to be a simple, no frills module for generating a string to send as the body for a POST request simulating a form submission. If you need something with more bells and whistles, check out the form-data module.

    Installation

    npm install --save form-data-body

    Usage

    const formDataBody = require('form-data-body')
    
    // Specify form fields
    const fields = {
      name: 'My test post',
      description: 'This is just a test post',
      items: ['First Item', 'Second Item'],
    
      // Files should be an object with the name, type, and data set to strings
      image: {
        name: 'hello.jpg',
        type: 'image/jpeg',
        data: binaryImageData
      }
    }
    
    const boundary = formDataBody.generateBoundary()
    const header = {
      'Content-Type': `multipart/form-data; boundary=${boundary}`
    }
    const body = formDataBody(fields, boundary)

    Example Response

    ----------------------------071517909670537006900435
    Content-Disposition: form-data; name="name"
    
    My test post
    ----------------------------071517909670537006900435
    Content-Disposition: form-data; name="description"
    
    This is just a test post
    ----------------------------071517909670537006900435
    Content-Disposition: form-data; name="items[]"
    
    First Item
    ----------------------------071517909670537006900435
    Content-Disposition: form-data; name="items[]"
    
    Second Item
    ----------------------------071517909670537006900435
    Content-Disposition: form-data; name="image"; filename="hello.jpg"
    Content-Type: image/jpeg
    
    [BINARY IMAGE DATA]
    ----------------------------071517909670537006900435--
    

    License

    MIT. See the LICENSE file for more info.

    Install

    npm i form-data-body

    DownloadsWeekly Downloads

    45

    Version

    0.1.0

    License

    MIT

    Unpacked Size

    8.85 kB

    Total Files

    6

    Last publish

    Collaborators

    • kodie