0
是否可以将多个请求中的响应传输到http服务器响应?nodejs-请求模块 - 将请求中的多个响应流式传输到http.ServerResponse
在expressjs,一些喜欢 -
router.get('/streamingApi',(req,res)=> {
request('http://localhost:3000/first').pipe(res); //take 300 ms
request('http://localhost:3000/second').pipe(res); //take 100 ms
request('http://localhost:3000/third').pipe(res); // take 200 ms
}
的想法是流回到浏览器,因为它到达(当我们得到了第二个API响应这是最快的,它传输到浏览器,然后第三api响应并持续第一个api的响应)。
但是,当我运行上面的代码,只有第一个响应得到管道,然后连接关闭。
这是甚至可以与流管道?任何建议来解决这个问题,而不使用socket.io?
感谢您的回复。我需要所有3个响应,而不仅仅是第一个响应。但不想等待所有3个请求完成。 – msreekm
我不明白你想要完成什么。你想要缓冲所有3个响应,然后*发送回客户端?如果您需要全部3个响应,并且您不想等待它们完成,那么您希望如何将它们全部交付给客户? – mscdex
mscdex-这是Iam也想知道是否有办法做到这一点。 。我能够实现的一种方式是使用websockets。但扩展websockets应用程序并不那么简单。所以iam试图看看我们是否可以用普通的http调用来做到这一点。感谢您的回应。 – msreekm