gpt4 book ai didi

javascript - 将node.js HTTP响应函数(使用 "request"库)转换为使用流

转载 作者:太空宇宙 更新时间:2023-11-03 22:33:55 24 4
gpt4 key购买 nike

我正在使用request library在 node.js 中,它下载 HTML 正文响应,但以 block 的形式进行。目前,我只是将它们连接到一个 dataChunks 变量中,并使用 hacked-together 测试来查看何时全部下载。不过,我浏览了一下 Stream Handbook ,这似乎是一种适合使用流来获取数据 block 的情况。我不完全明白我会如何做到这一点,所以将不胜感激任何帮助。相关代码如下:

var dataChunks = "";

request.get({ url: baseUrl + path })
.on("error", function(err) { throw new Error(err); })
.on("response", function(res) {
if (res.statusCode === 200) {
res.on("data", function(data) {
var dataString, dt;

dataChunks += (dataString = data.toString());

if ((dt = dataString.slice(-100).trimRight()).lastIndexOf("</html>") === dt.length - 7) {
// do stuff with dataChunks
}
});
}
});

预先感谢您的帮助。

最佳答案

您不需要流。来自请求自述文件:

var request = require('request');
request('http://www.google.com', function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body) // Show the HTML for the Google homepage.
}
})

流示例:

request('http://google.com/doodle.png').pipe(fs.createWriteStream('doodle.png'))

关于javascript - 将node.js HTTP响应函数(使用 "request"库)转换为使用流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32678926/

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