我知道那个命令
curl -X POST -d 'some data to send' http://somehost.com/api
可以使用一些代码在Node.js中进行模拟
var http = require('http'); var post_data = 'some data to send', headers = { host: 'somehost.com', port: 80, method: 'POST', path: '/api', headers: { 'Content-Length': Buffer.byteLength(post_data) } }; var request = http.request(headers, function(response) { response.on('data', function(d) { console.log(d); }); }); request.on('error', function(err) { console.log("An error ocurred!"); }); request.write(post_data)); request.end();
问题是因为我正在寻找cURL命令的等效节点
curl -d name="Myname" -d email="myemail@gmail.com" -X POST http://somehost.com/api
我怎样才能做到这一点?
这是因为我想对像这样的Cherrypy服务器发出POST请求,但我无法完成请求.
编辑正如@mscdex所说,解决方案与请求库有关:
我已经解决了请求库的问题.我的解决方案代码是
var request = require('request'); request.post('http://localhost:8080/api', { form: { nombre: 'orlando' } }, function(err, res) { console.log(err, res); });
谢谢!