我正在尝试从服务器端从express js 向api 发出post 请求。
这是它的代码
request.post({
url: $url,
crossDomain: true,
data: {id : '392', sid: 'abc'}
}, function(error, response, body){
console.log(response.statusCode);
console.log(body);
});
这总是返回响应状态代码 500;
另一方面,我尝试使用 Jquery 从服务器端发出相同的 post 请求。
这是它的代码。
$.ajax({
url: $url,
crossDomain:true,
data: {
id : $id,
sid: $sid
},
type: "POST",
// dataType: "json",
//on success
success: function(response){
//do something after something is received data
},
//on error
error: function(jqXHR, exception){
//bad request
console.log(jqXHR.status);
console.log(exception);
}
});
在这两种情况下,$url 和所有其他变量都是相同的。不过,我使用 Jquery 发布的帖子得到了正确的响应和状态代码 200,这与我使用 npm 请求模块发布的帖子不同。
我哪里出错了?
最佳答案
这段代码怎么样?
我似乎也没有在 request.js 文档中找到任何对“crossDomain”选项的引用
var request = require('request');
request.post(
{
headers: {'content-type':'application/json'},
url: $url,
form: {id : '392', sid: 'abc'}
},
function(error, response, body){
console.log(response.statusCode);
console.log(body)
}
);
关于javascript - npm request.post 每次都会出错,但同一篇文章适用于 JQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44390845/