如何使用请求模块在Node.JS中发出发布请求以及JSON数据文件

时间:2018-09-25 13:08:00

标签: json node.js post request sails.js

在下面的python中,我的代码可解决此问题,但在使用此请求模块的Node.JS中发现困难。

这是我的python代码:

inputData = {
  "datasetName": "dataset44",
  "typeOfDataset": "TS",
  "userID": "c0fe211c_8c41_459a_9019_19d98111ed92"
}
fileName = 'out.csv'
files = {
  'json': (None, json.dumps(inputData), 'application/json'),
  'file': (os.path.basename(fileName), open(fileName, 'rb'),
    'application/octet-stream')
}

我在这里尝试的事情:

var fileData = fs.createReadStream(filePath);

var headers = {
    'Content-Type': 'application/json , application/octet- 
    stream,
    multipart / form - data ' }

    var files = {
      'json': {
        "datasetName": dataSetName,
        "typeOfDataSet": "TS",
        "userID": req.session.userSourceID
      },
      'file': fileData
    }
    // Configure the request
    var options = {
      url: ' http://xx.xx.xx.x:x/x1/createx',
      method: 'POST',
      headers: headers,
      json: files
    }

    request(options, function(error, response, body) {

1 个答案:

答案 0 :(得分:0)

您必须在Node.js中使用multipart/related。参见https://github.com/request/request#multipartrelated