[英]Node.JS HTTP Request - Separate The Callback Function
現在,Node HTTP請求的回調必須是請求內的匿名函數,就像這樣...
http.request(params, function(res){
let data = "";
res.on("data", function(chunk){
data += chunk;
});
res.on("end", function() {
console.log(data);
});
}).end();
我想從相同或不同的文件中將回調分為它自己的聲明函數...這樣...
function handleData(res) {
let data = "";
res.on("data", function(chunk){
data += chunk;
});
res.on("end", function(){
console.log(data);
});
}
https.request(params, handleData(res));
是否有可能做到這一點? 任何地方都沒有明確的答案。 我好像是第一個嘗試此操作的人。 在此先感謝您的時間!
可能是這樣的:
function handleResponse(res) {...yourcode...};
http.request(params, handleResponse).end();
或這個:
const handleResponse = function (res) {...yourcode...};
http.request(params, handleResponse).end();
要么
const handleResponse = res => {...yourcode...};
http.request(params, handleResponse).end();
要么
const handleResponse = res => {...yourcode...};
const request = http.request(params);
request.end();
request.on('response', handleResponse);
JavaScript和Node.js確實很靈活。
當然,當您將.end()添加到他提供的代碼行的末尾時,elclanrs的注釋就是解決方案。
恩。
http.request(params, handleData).end();
我還有另一個問題,那就是“為什么在通過請求傳遞該函數時我不必提供括號?” 我認為應該看起來更像
handleData()
無論哪種方式,謝謝enclanrs先生!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.