我对后端技术还比较陌生,我对今天看到的示例感到惊讶。
这是一个引入新API的示例,但我对如何通过同一请求传递数据感到惊讶。我可能怀疑使用了流,我试图通过express的res.write
方法创建它,但实际上并没有达到我的期望。在读取整个流之前,它不会发送响应。
https://fetch-abort-demo.glitch.me/
我如何在Node.JS / Express应用程序中实现它?
原来我对流是正确的。我之前无法正确阅读的问题。它需要一些客户端代码来读取流数据。阅读的源代码可以在我发布的示例链接中找到。
和流看起来像这样。
const it = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10']
app.get('/stream', (req, res) => {
let time = 100
for (const i of it) {
setTimeout(() => {
res.write(i)
}, time)
time += 2000
}
setTimeout(() => {
res.end()
}, time + 2000)
})