当尝试击中时总是在回调方法的帮助下得到一个错误,但总是得到错误&尝试在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' }
答案 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) {
}