如何从 websocket url 获取数据?

Posted

技术标签:

【中文标题】如何从 websocket url 获取数据?【英文标题】:How can I get data from a websocket url? 【发布时间】:2016-07-20 08:27:23 【问题描述】:

当我连接到使用 websockets 的网站时,我可以使用 Google Developer Tools 获取框架。

Data from the websocket url

所以我想在程序(JS、C#)中获取相同的数据,但我实际上不知道该怎么做。

我想过用 NodeJS 做一个 http.request,但它不是一个 http url:/ 我想制作一个示例 JS 客户端,但我无法获取数据,因为我无法使用“密钥”发送标头。

The headers

所以,我真的希望你有办法帮助我,并为我的基本英语感到抱歉:(

【问题讨论】:

您可以使用 socket.io 之类的库来连接 ws:// 和 wss:// 协议。 一个快速的谷歌想出了npmjs.com/package/websocket 用于节点。和msdn.microsoft.com/en-us/library/… .net 我们如何从 chrome 开发工具中获取 websocket 数据到外部文件中? 【参考方案1】:

WebSockets 是一种标准技术,用于在客户端和服务器之间实现有状态的持久连接。它有自己的协议ws://wss://(如https://)。

您需要一个合适的 WebSocket 客户端来从服务器接收数据。

这里的问题是 WebSockets 本身不是一个协议。没有请求和响应的概念。这就像使用 TCP 套接字一样。

如果你想使用 WebSockets,NodeJS 有Socket.IO client API。

在 C# 中,你应该看看 SignalR。

【讨论】:

我想我明白了,但一个问题仍然存在:我必须设置一个标题吗? @Rynelf 不,如果您使用的是 socket.io,则不必设置任何特定的标头。按照文档进行操作,您会惊讶地发现,您启动和运行的速度有多快。 @Rynelf 正如我在回答中所说,Websocket 没有协议。没有标头,请求正文...就像使用原始网络通道 我有一个类似的任务。我需要从运行在 chrome 浏览器中的 websocket 访问数据?这是要走的路吗? @Dr.YounesHenni 为什么不呢,顺便说一句,谁知道你案件的细节。我会发布一个新的问答..

以上是关于如何从 websocket url 获取数据?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 pusher 的帮助下使用 websocket 从数据库中获取数据?

尝试使用 websockets 从 FastAPI 获取实时数据流时如何修复错误(不支持的升级请求。)?

如何从 GDAX websocket feed 获取实时出价/要价/价格

连接打开后如何从javax websocket服务器获取消息

如何从 SESSID 获取 $_SESSION 数据?

使用 .Net ClientWebSocket 从 WebSocket 获取数据