总是得到"套接字与ECONNRESET'""

时间:2018-04-22 19:33:30

标签: javascript node.js sockets post econnreset

当尝试击中时总是在回调方法的帮助下得到一个错误,但总是得到错误&尝试在NodeJS中的POST HTTP方法中调用API,尝试了所有解决方案,但什么都没有。

exports.createWallet = function(user_id, password, callback) {

var api_code = config.blockchain.api_code;
var user = user_id;
var pwd = password;

var result;

const post_data = JSON.stringify({
    'api_code': api_code,
    'password': pwd,
    'user_id': user
});

const options = {

    hostname: 'localhost',
    port: 8586,
    path: '/api/v2/create',
    method: 'POST',
    headers: {
        'Content-Type': 'application/x-www-form-urlencoded',
        'Content-Length': Buffer.byteLength(post_data)
    }
};

var request = https.request(options, function (response) {
});

request.on('error', function (error) {

    console.log(error);
});

// With http.request() one must always call request.end() to signify the end of the request - even if there is no data being written to the request body.
request.end();
};
{ Error: socket hang up

    at TLSSocket.onHangUp (_tls_wrap.js:1120:19)
    at Object.onceWrapper (events.js:293:19)
    at emitNone (events.js:91:20)
    at TLSSocket.emit (events.js:188:7)
    at endReadableNT (_stream_readable.js:975:12)
    at _combinedTickCallback (internal/process/next_tick.js:80:11)
    at process._tickCallback (internal/process/next_tick.js:104:9) code: 'ECONNR
ESET' }

2 个答案:

答案 0 :(得分:0)

在选项中,尝试添加body: post_data

答案 1 :(得分:0)

//只需使用不使用https&传递路径中的参数

var http = require("http");     
const options = {

    hostname: 'localhost',
    port: 8586,
    path: '/api/v2/create?api_code='+api_code+'&password='+pwd+'&user_id='+user,
    method: 'POST',
};

var request = http.request(options, function (response) {

}