gpt4 book ai didi

javascript - 为什么 request.on() 在 Node.js 中不起作用

转载 作者:行者123 更新时间:2023-11-30 08:42:53 25 4
gpt4 key购买 nike

我正在尝试使用 Node 请求模块从第三方服务获取一些数据,并从函数中将此数据作为字符串返回。我的看法是 request() 返回可读流,因为你可以执行 request(...).pipe(writeableStream) 这 - 我认为 - 意味着我可以做

function getData(){
var string;

request('someurl')
.on('data', function(data){
string += data;
})
.on('end', function(){
return string;
});
}

但这实际上行不通。我认为我对 request() 或 Node 流的真正工作方式有一些错误的认识。有人可以在这里消除我的困惑吗?

最佳答案

它确实按照您解释的方式工作。也许您面临的问题是由于 node.js 的异步性质造成的。我很确定您正在以同步方式调用 getData()。试试这个,看看你的 request 调用是否没有返回一些东西:

request('someurl')
.on('data', function(data){
console.log(data.toString());
.on('end', function(){
console.log("This is the end...");
});

看看这篇文章here .它并不短,但它解释了如何编写代码来处理这种情况。

关于javascript - 为什么 request.on() 在 Node.js 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24477699/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com