我们正试图让节点在另一台机器上使用基于ssl的api,并且它因套接字挂起错误而失败。我将代码放在下面。基本上,在一台机器上我们有一个基于asp.net web api的api设置为接受请求,另一台我们有一个基于tomcat spring mvc的api接受请求。这两个apis都与fiddler,postman,其他网站发送相同的请求,但是当节点发送到tomcat站点时,我们立即得到套接字挂起错误。我们正在努力找出问题所在。所以它可以正常使用一个基于ssl的URL,但是与另一个失败,我们已经确认这两个站点都有效。代码如下。我们有什么东西不见了吗?
app.post('/site/app/getvalue', function(req, res){
process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0";
console.log("Request: ");
console.log(req.body);
var options = {
method: 'post',
body: req.body,
json: true,
//url: 'https://X.X.X.X/getvalue/',
url : 'https://X.X.X.X:8443/getvalue/',
rejectUnauthorized: false,
headers: { 'Content-Type' : 'application/json'}
};
request(options,
function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log("Response: ");
console.log(body);
console.log("Transaction Count: " + body.TransactionCount);
res.send(body);
}
else {
console.log("ERROR: " + error);
res.send(500);
}
}
);
});
我们得到:错误:错误:套接字挂断