Nodejs Post请求报socket hang up错误的解决办法
@H_403_0@参考nodejs官网发送http post请求的方法,实现了一个模拟post提交的功能。实际使用时报socket hang up错误。
@H_
403_0@后来发现是请求头设置的问题,发送选项中需要
加上headers字段信息(这个估计也和对方的服务器有关,对于不完成的post请求头,可能被丢弃了)。
@H_
403_0@完整的
代码如下(遇到类型问题的同学可以做个参考):
<div class="codetitle">
<a style="CURSOR: pointer" data="1195" class="copybut" id="copybut1195" onclick="doCopy('code1195')"> 代码如下: <div class="codebody" id="code1195">
var querystring = require('querystring'),http = require('http');
@H_
4030@var data = querystring.stringify({
info:'hi',
test:5
});
@H403_0@var opt = {
hostname:'www.test.com',
port :9094,
path:'/peration
sqlQuery',
method: 'POST',
headers: {
'Content-Type':'application/x-www-form-urlencoded',
'Content-Length': data.length
}
};
@H_
403_0@var req = http.request(opt,function (res) {
res.on('data',function (data) {
console.log(data.toString());
});
});
req.on('error',function(e) {
console.log('problem with request: ' + e.message);
});
req.write(data);
req.end();