Javascript 如何使用node.js将.json文件作为HTTP POST发送?

Javascript 如何使用node.js将.json文件作为HTTP POST发送?,javascript,node.js,http,httprequest,Javascript,Node.js,Http,Httprequest,我对这些概念都不熟悉,所以如果这个问题很琐碎,我很抱歉。我试图编写一个脚本,生成一个HTTPPOST请求,发送一个包含json数组的.json文件。我正在使用一个npm模块,可以在这里找到: 以及一个指导您使用以下模块的教程: 以下是我目前掌握的代码: //var fs = require('fs'); var request = require('request'); // Set the headers var headers = { 'Content-Type': "s

我对这些概念都不熟悉,所以如果这个问题很琐碎,我很抱歉。我试图编写一个脚本,生成一个HTTPPOST请求,发送一个包含json数组的.json文件。我正在使用一个npm模块,可以在这里找到: 以及一个指导您使用以下模块的教程:

以下是我目前掌握的代码:

//var fs = require('fs');
var request = require('request');

  // Set the headers
  var headers = {
    'Content-Type': "stuff",
    'x-authorization': "stuff"
  }

  // Configure the request
  var options = {
      url: 'http://localhost:8080/users/add',
      method: 'POST',
      headers: headers,
      form: {
          'username': 'testuser42',
          'firstName': 'test',
          'lastName': 'user42',
          'password': 'testpassword'
      }
  }

  // Start the request
  request(options, function(error, response, body){
      if (!error && response.statusCode == 200) {
          console.log(body)
      }
  })
我试图发送到本地服务器的data.json文件将包含一个json数组,格式如下:

[
  {
    "username": "testuser1",
    "firstName": "test",
    "lastName": "user1",
    "password": "password1'
  },
  {
    "username": "testuser2",
    "firstName": "test",
    "lastName": "user2",
    "password": "password2'
  }
]

所以我认为我需要对每个数组元素分别发出POST请求,但我不清楚如何做到这一点。

这里是一个简单的例子。正文需要是JSON类型,不管项目的数量如何,只要JSON格式正确,就可以开始了

  const obj= {'msg': [
  {
    "username": "testuser1",
    "firstName": "test",
    "lastName": "user1",
    "password": "password1"
  },
  {
    "username": "testuser2",
    "firstName": "test",
    "lastName": "user2",
    "password": "password2"
  }
]};

request.post({
    url: 'your website.com',
    body: obj,
    json: true
  }, function(error, response, body){
  console.log(body);
});
要包含json文件,只需像普通一样使用require函数


1:
const obj=require('./path_to/data.json')

为什么您认为需要执行两个单独的请求?我认为POST请求的正文只能包含一个json对象。为了回答您的问题,整个data.json是一个json文件,因此可以发送整个。你应该问自己的唯一一件事是潜在大小数组的大小是可变的,它不会总是只包含两个对象。检查我做的枯燥的回答,你可以在这里使用承诺,而不是回调,只是想使用最简单的示例另一个很好的选择是Axios,但在我的例子中,包含json项的“obj”位于单独的本地文件中。所以我想我要问的是如何把这个文件读入我的脚本?非常感谢!好吧,如果有帮助的话,接受未来行动的答案。欢迎