Skip to content
This repository has been archived by the owner on Oct 22, 2021. It is now read-only.

anbucher/node-red-contrib-send-form

 
 

Repository files navigation

PLEASE USE https://github.com/dainer88/node-red-contrib-send-form as this is a maintained fork.

node-red-contrib-send-form

This is a node-red node for posting http(s) requests containing files as multipart formData.

Installation

run npm -g install node-red-contrib-send-form

Features

Pulled together using some of the best of parts of other node-red-contrib nodes (particularly node-red-contrib-http-request), and the best parts of stackoverflow. Currently only sends files. However, there are future plans to handle other types multipart/form-data.

Usage

Required node inputs:

  • url (this is specified on the node)
  • file source type:
    • base64 or binary buffer

File

  • Data | Buffer
    Needs to be passed in msg.payload.file.data

  • Name of file field | String
    Needs to be passed in msg.payload.file.field

  • Name of file | String
    Needs to be passed in msg.payload.file.name

  • Source type | String
    Can be selected within the node from a dropdown menu "type" or passed in msg.payload.file.type. Payload overrides the dropdown menu.

    Currently accepts

    • base64
    • binary

Form fields

Can be inserted within the node or passed as part of msg.payload.formOptions.<name of key>

msg.payload.formOptions.params = 'test':

is the same as

<input type=textbox name=params value="test">

Example msg.payload

msg.payload = {
  file: {
    field: 'file',
    data: msg.payload,
    type: 'binary',
    name: 'file'
  },
  formOptions: {
    params: '',
  }
}

same as:

  <form method=post enctype=multipart/form-data>
    <input type=textbox name=params value="">
    <input type=file name=file>
  </form>

Example flow

Check Node-RED Menu Import -> Examples for available examples

Why this module?

As of december 2019, NodeRed does not yet support sending multipart form-data. This module aims to begin to close that gap.

There is always room for improvement, and new ideas are valued. Feel free to submit pull requests to make this library even better.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 59.6%
  • HTML 40.4%