我如何使用 websocket 让我了解 3rd 方 api 中的实时数据
Posted
技术标签:
【中文标题】我如何使用 websocket 让我了解 3rd 方 api 中的实时数据【英文标题】:How can i use websocket to keep me updated with the live data which is in 3rd party api 【发布时间】:2018-05-01 07:19:24 【问题描述】:问题是聊天服务器上有很多关于 websocket 的教程,但是聊天服务器收到消息并使用 websocket 向所有打开的连接广播,但这里我的场景是我有一个 Stock API
https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol=MSFT&interval=1min&apikey=demo
我想在我的应用程序中实时更新,例如。如果 API 数据发生变化,它需要反映在我的应用程序中。
我该怎么做。对于 websocket,它使用 ws:// 连接,但我使用的 api 没有 websocket 连接
我使用 Angular 5 作为数据库操作的前端和节点。
【问题讨论】:
【参考方案1】:因此,您发布的 API 似乎是一个 GET REST API,您必须以1
分钟或60000
毫秒为间隔进行轮询才能接收更新。
如果您尝试更频繁地获取信息,您将收到错误
"Error Message": "Invalid API call. Please retry or visit the documentation (https://www.alphavantage.co/documentation/) for TIME_SERIES_INTRADAY."
您可以使用setInterval
或其他RxJS
方法进行轮询。
如果你想拥有网络套接字连接,你必须找到一个有 WS API 的第三方,将它与你的后端 (NodeJS) 集成,然后与你的前端 (Angular) 建立一个 WS 连接。
【讨论】:
以上是关于我如何使用 websocket 让我了解 3rd 方 api 中的实时数据的主要内容,如果未能解决你的问题,请参考以下文章
带有 3rd 方数据库的 Django Channels 和 Web Socket
是否可以通过 GraphQL/REST 后端共享 3rd 方 API websocket/实时连接?
如何在使用 stomp 时让我的 springboot 应用程序 websocket 应用程序通过“ws://”url 连接