簡體   English   中英

HTTP上的Node.js發布請求未完成

[英]Node.js post request on http not finishing

在node.js中,我正在使用http請求模塊發出此請求

var post_req = http.request({
    host: 'api.site1.ciscozeus.io',
    path: '/logs/' + ZUES_TOKEN + '/' + logName + '/',
    port: 80,
    method: 'POST',
    headers: {
        'Content-type' : 'application/x-www-form-urlencoded'
    }
}, function(res) {
    res.on('data', function (chunk) {
        console.log(1);
        cb(chunk);
    });
});
post_req.write(JSON.stringify({
    "logs" : JSON.stringify('[{"test":"value1"}]')
}));
post_req.on('error', function(e) {
    console.error(e);
});
post_req.end();

但是我的問題是它似乎沒有進入cb(chunk); 就像它不調用最終承諾函數。 它不會打印console.log(1)。

該api有一個測試站點,可以進行嘗試,如果我在那里嘗試,它就可以工作。 這是我在該工具中檢查日志數據時的樣子:

在此處輸入圖片說明 在此處輸入圖片說明

有人知道我是否錯誤地附加了日志數據嗎? 我不會發布相同的數據。

謝謝

post_req.write(JSON.stringify({
    "logs" : JSON.stringify('[{"test":"value1"}]')
}));

在代碼的以上部分中,內部JSON.stringify不正確。 您應該只寫'logs' : [{'test' : 'value1'}] 外部JSON.stringify將負責將整個JSON object轉換為string

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM