如何从 Node.js 中的 API 请求创建响应流?
Posted
技术标签:
【中文标题】如何从 Node.js 中的 API 请求创建响应流?【英文标题】:How to create a stream of response from an API request in Node.js? 【发布时间】:2015-12-08 20:53:54 【问题描述】:我已经使用 Node.js 的异步功能已经有一段时间了。但我被困在一个有趣的问题上。基本上我有 2 个 API 需要一个接一个地调用。由于 Node.js 的异步特性,我无法检索第一个 API 请求的响应,直到它完成并调用相应的回调函数。 我想要做的是我想将来自第一个 API 的响应作为请求有效负载即时传递给第二个 API,而不是等到第一个 API 完全完成。
作为一种可能的选择,我是否应该从构建 rest API 切换到流 API?
关于如何做到这一点的任何指示?
谢谢
【问题讨论】:
您可能需要将您的第一个 API 转换为流 API(而不是 REST),然后在流发送到客户端时对其进行处理。您可能没有使用 Twitter 的 API,但他们对这两者之间的区别有很好的解释。看看here @NoobCoder 感谢您的评论!这两个 API 都在谈论我们自己的自定义 API .. 如何从 REST API 创建流 API? 所以你正在构建一个流代理? @MattHarrison 我无法回答您的问题。你能详细说明一下吗? 【参考方案1】:是的,将 REST API 转换为流 API 是更好的选择。 Node.js 以其异步行为而闻名。因为所有 REST api 的功能与前面描述的方式相同。正如之前有人指出的那样,您可以查看 Twitter Stream API 以供参考。
要了解更多信息,您可以查看此链接 - How to create a streaming API with NodeJS
【讨论】:
以上是关于如何从 Node.js 中的 API 请求创建响应流?的主要内容,如果未能解决你的问题,请参考以下文章
无法从 Flutter Web 上的 localhost API(node js express)获取 http 请求的响应 [重复]
每次在 Node.js (Express.js) 中发出 API 请求之前,如何简化 Fetching Auth token?