【问题标题】:How to intercept WebSocket data?如何拦截 WebSocket 数据?
【发布时间】:2018-04-28 13:58:01
【问题描述】:

在 Firefox 57 中,您可以拦截 body of http requests 以及响应(使用 filterResponseData)。是否可以对 Web 套接字执行相同的操作?

【问题讨论】:

标签: firefox-addon-webextensions


【解决方案1】:

我不认为你可以使用 API 来查看 WebSocket 通信。

webRequestAPI 仅适用于 WebSocket 握手,仍然是普通的 HTTP。但是一旦 HTTP 升级完成,API 将无法再观察到它。

引用相关bugfix on Chrome:

在 WebRequest API 中支持 WebSocket。

这个 CL 使 WebRequest API 支持拦截 WebSocket 握手 要求。由于握手是通过 HTTP 升级请求完成的,它的 flow 适合面向 HTTP 的 WebRequest 模型。附加限制适用, 由扩展触发的 WS 请求重定向将被忽略。

请注意,WebRequest API 不会拦截:

  • 通过已建立的 WebSocket 连接发送的单个消息。
  • WebSocket 关闭连接

由于 Mozilla 通常会尝试遵循 Chrome 扩展程序,因此我希望 Firefox 的行为应该相同。

【讨论】:

    猜你喜欢
    • 2022-01-09
    • 2020-03-18
    • 1970-01-01
    • 1970-01-01
    • 2012-02-22
    • 2013-11-21
    • 1970-01-01
    • 1970-01-01
    • 2013-07-04
    相关资源
    最近更新 更多