在没有 ajax 的情况下更新数据或在网络选项卡中记录请求 - Websockets

Posted

技术标签:

【中文标题】在没有 ajax 的情况下更新数据或在网络选项卡中记录请求 - Websockets【英文标题】:Updating data without ajax or logging of request in network tab - Websocekts 【发布时间】:2017-12-20 07:12:37 【问题描述】:

我发现一个网站正在更新其交易数据,这似乎就像使用 AJAX 但在 chrome 的网络面板上没有任何类型的请求的日志。

见下图——

现在再次,来自同一个会话 -

我的假设是这些价格是从 JSON 更新的,因为跟踪器 API 在页脚提供 - https://koinex.in/api/ticker 但是这些更新没有console.log或网络日志,而且这些速率更新非常快,请尝试访问并查看。

有谁知道他们使用什么来隐藏请求。

注意 - 网站是有角度的,因为它有 ng 指令 参考 - - https://koinex.in/exchange/ripple

【问题讨论】:

【参考方案1】:

他们正在使用 WebSocket 来刷新数据。检查Developer Console 上的 WS 或 WebSocket 选项卡。

当您处理快速变化的数据并希望将其展示给用户时,这是最佳实践之一。

WebSocket 是一种先进的技术,可以打开一个 用户浏览器与 服务器。使用此 API,您可以将消息发送到服务器并接收 事件驱动的响应,而无需轮询服务器以获取回复。 (read more)

【讨论】:

【参考方案2】:

这是通过 websockets 完成的。您可以通过在“网络”选项卡打开时重新加载页面来验证这一点,您会在状态 101 列表中注意到 websocket 类型的条目。 如果您单击此条目,然后在网络的主窗格中单击“帧”,您将看到正在交换的数据。

【讨论】:

以上是关于在没有 ajax 的情况下更新数据或在网络选项卡中记录请求 - Websockets的主要内容,如果未能解决你的问题,请参考以下文章

更新选择列表而不刷新 [PDO/PHP/AJAX]

尝试访问重新加载或刷新或在角度 5 的新选项卡中访问时收到 AccessDenied

使用 popunder 或在新选项卡中打开站点不间断的音乐

如何使用 Ajax 成功在新选项卡中打开 URL?

错误:函数返回 None 或在没有返回语句的情况下结束。但在哪里找不到? [复制]

如何在不从当前活动选项卡中获取焦点的情况下将子窗口添加到 QMdiArea(设置为 TAB 模式)?