我已經在Node.js應用程式下面的代碼:獲取狀態,身體,從節點的libcurl頭
var curlStatus = "";
var curlBody = "";
var curlHeaders = "";
var curlInfo = curl.on('end', function(statusCode, body, headers){
curlStatus = statusCode;
curlBody = body;
curlHeaders = headers;
//this.close();
return {status: curlStatus, body: curlBody, headers: curlHeaders};
});
curl.on('error', function(){
console.log("CURL ERROR");
});
curl.perform();
上return {status: curlStatus, body: curlBody, headers: curlHeaders};
放置一個斷點表明body
,headers
和statusCode
成功是填充。但是,在curl.perform()
之後放置一個斷點表示curlStatus
,curlBody
和curlHeaders
變量仍爲空字符串。我如何將信息傳遞給父函數?
在javascript中的執行本質上並不是連續的(更好的方式是這樣),傳遞給'curl.on('end')'的回調函數在'curl.perform'之後的很多時間執行。因此,curl.perform()後面的斷點不會顯示任何東西。 – zeronone