Javascript 将curl选项传递给节点js http请求

Javascript 将curl选项传递给节点js http请求,javascript,node.js,api,http,curl,Javascript,Node.js,Api,Http,Curl,我有一个对api的curl请求,它需要一个-u参数来设置用户名登录名,并需要一个-d来发送帖子的数据 这是一个模板: $ curl -i -X POST "https://onfleet.com/api/v2/workers" \ -u "c64f80ba83d7cfce8ae74f51e263ce93:" \ -d '{"name":"Marco Emery","image":"http://cdn3.addy.co/images/marco.png","phone":"4

我有一个对api的curl请求,它需要一个-u参数来设置用户名登录名,并需要一个-d来发送帖子的数据

这是一个模板:

$ curl -i -X POST "https://onfleet.com/api/v2/workers" \
     -u "c64f80ba83d7cfce8ae74f51e263ce93:" \
     -d '{"name":"Marco Emery","image":"http://cdn3.addy.co/images/marco.png","phone":"415-342-0112","teams":["0pgyktD5f3RpV3gfGZn9HPIt"],"vehicle":{"type":"CAR","description":"Tesla Model 3","licensePlate":"CA 2LOV733","color":"purple"}}'
如何将-u和-d都转换为这种格式的节点js请求

var options = {
  host: 'www.google.com',
  port: 80,
  path: '/upload',
  method: 'POST'
};

或者,是否可能有一个url,我可以给我的网络浏览器,将这些选项考虑在内

在API文档中,它使用基本HTTP身份验证,其中密钥字符串是请求的用户名,密码为空。因此,您必须在每个请求中添加该授权标头。您可以使用以下方法执行此操作:

var request = require('request');
var options = {
    method: 'POST',
    uri: 'https://onfleet.com/api/v2/workers',
    body: '{"name":"Marco Emery","image":"http://cdn3.addy.co/images/marco.png","phone":"415-342-0112","teams":["0pgyktD5f3RpV3gfGZn9HPIt"],"vehicle":{"type":"CAR","description":"Tesla Model 3","licensePlate":"CA 2LOV733","color":"purple"}}',
    headers: {
        'Authorization': 'Basic ' + new Buffer("c64f80ba83d7cfce8ae74f51e263ce93:").toString('base64')
    }
};
request(options, function(error, response, body) {
    console.log(body);
});
您可以使用npm模块这样做:

var request = require('superagent');
request
   .post('https://onfleet.com/api/v2/workers')
   .auth('c64f80ba83d7cfce8ae74f51e263ce93', '')
   .send({"name":"Marco Emery","image":"http://cdn3.addy.co/images/marco.png","phone":"415-342-0112","teams":["0pgyktD5f3RpV3gfGZn9HPIt"],"vehicle":{"type":"CAR","description":"Tesla Model 3","licensePlate":"CA 2LOV733","color":"purple"}})
   .end(function(err, res){
         if (res.ok) {
             console.log('yay got ' + JSON.stringify(res.body));
          } else {
             console.log('Oh no! error ' + res.text);
          }
   });

你试过了吗?'-u'可以替换为基本授权标头。示例:
Authorization:Basic c64f80ba83d7cfce8ae74f51e263ce93:
Yes这就是我需要的!谢谢:)