我希望向在localhost上运行的服务器发送请求并处理它的'回复并回复用户。
var post_data = qs.stringify({
'parameter':'some value'
});
var post_options = {
uri: 'http://localhost:9000',
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'Content-Length': Buffer.byteLength(post_data)
}
};
var post_req = request(post_options,function(error,response,body){
response.setEncoding('utf-8');
if(response.statusCode==200)
{
console.log(body);
var resp_data = JSON.parse(body);
var result = validate(resp_data,expected_output);
res.setHeader('Access-Control-Allow-Origin','*');
res.writeHead(200,{"Content-Type":"application/json"});
res.write(JSON.stringify(result));
res.end();
}
});
post_req.write(post_data);
post_req.end();
然而,&#39>身体' 'post_req'的回调函数中的参数即使在localhost:9000上运行的服务器返回响应,也未定义。检查错误'参数,它显示'错误:解析错误'。帮帮我。
答案 0 :(得分:0)
您是否正在传递JSON.parse(body)
有效的JSON?如果没有,它会给你这个错误。
如果您传递看似有效的JSON,请查看this question。可能是你将它作为一个对象或数组传递。
答案 1 :(得分:0)
我找到了解决办法!
这是我在http://localhost:9000运行的后端python服务器发送了垃圾回复。
找到的python服务器的解决方案