如何将数据连续传递到同一请求

问题描述 投票:0回答:1

我对后端技术还比较陌生,我对今天看到的示例感到惊讶。

这是一个引入新API的示例,但我对如何通过同一请求传递数据感到惊讶。我可能怀疑使用了流,我试图通过express的res.write方法创建它,但实际上并没有达到我的期望。在读取整个流之前,它不会发送响应。

https://fetch-abort-demo.glitch.me/

我如何在Node.JS / Express应用程序中实现它?

node.js express stream backend
1个回答
0
投票

原来我对流是正确的。我之前无法正确阅读的问题。它需要一些客户端代码来读取流数据。阅读的源代码可以在我发布的示例链接中找到。

和流看起来像这样。

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)
})
© www.soinside.com 2019 - 2024. All rights reserved.