javascript - 从 node-libcurl 获取状态、正文和 header

标签 javascript node.js curl libcurl node-libcurl

我在 Node.js 应用程序中有以下代码:

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}; 上放置断点显示 bodyheadersstatusCode 已成功填充。但是,在 curl.perform() 之后放置断点会显示 curlStatuscurlBodycurlHeaders 变量仍然是空字符串。如何将信息传递给父函数?

最佳答案

欢迎来到 JavaScript 和异步问题。

当您执行 curl.perform(); 时,请求将开始但尚未完成,这就是为什么您的变量 curlX 尚未填充。
请求完成后,将调用您使用 url.on('end', function... 定义的回调,并且您将填充这些变量。

关于javascript - 从 node-libcurl 获取状态、正文和 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36918733/

相关文章:

javascript - 如何在 html.actionlink 中仅调用 javascript 函数

javascript - 是否可以确定我的网站页面是在新窗口中还是其中一个选项卡?

node.js - WebSocket 握手期间 NodeJs 错误

Python 捕获子进程中的成功或失败

javascript - 将值传递给 jsx map 中的模态

javascript - 如何在浏览器调整大小时刷新屏幕?

node.js - 使用 mongoose Schema.methods 函数运行应用程序时出错

node.js - Ember js - 无法使用 urlFor 方法生成带有动态段的 URL

ssl - curl: (7) 无法连接到 xx.xx.xx.xx:80;连接被拒绝

python - 如何使用 pycurl 很好地处理 KeyboardInterrupt (Ctrl-c)?