火狐Firefox 71浏览器中将引入WebSocket检查器
WebSocket(WS)是HTML5开始提供的一种在单个TCP连接上进行全双工通讯的协议,它允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就可以直接创建持久性的连接,并进行双向数据传输。

通常WebSocket可用于替换 AJax技术进行推送,继而实现成本更低、更实时的通讯,一般WebSocket也主要用于需要进行实时通信的应用。

日前Firefox开发人员在博客中介绍了其将在Firefox 71中引入的 WebSocket检查器。

新的WebSocket检查器是DevTools中现有“ 网络”面板UI的一部分,在此面板中已经可以过滤已打开的WS连接的内容,但是目前仍然不能看到通过 WS帧传输的实际数据。

以下屏幕截图显示了运行中的WS过滤器,响应代码指示服务器正在切换到WS连接。

如下图所示,边栏显示了有关所选HTTP请求的详细信息。此外,UI现在提供了一个全新的“ 消息”面板,该面板可用于检查通过选定WS连接发送和接收的WS帧。

实时更新的表显示了已发送(绿色箭头)和已接收(红色箭头)WS帧的数据,单击时每个帧都会展开,可以检查格式化的数据。

专注于特定消息的话,可以将帧过滤为自由文本。

默认显示“数据”和“时间”列,但是可以自定义界面查看更多列。

在列表中选择一个帧的话会在“消息”面板的底部显示预览。

该检查器当前支持以下WS协议:

纯JSON

socket

SockJS

新的WS检查器将解析基于这些协议的有效负载并将其显示为可扩展树,以便于检查。当然,仍然可以查看原始数据:

使用“网络”面板工具栏中的“暂停/继续”按钮可以停止拦截WS通信,方便仅捕获感兴趣的帧。

WebSocket检查器将在Firefox 71中发布,现在可以在 Firefox Developer Edition 中使用。目前Firefox还在对以下功能进行跟进:

二进制有效负载查看器

指示关闭的连接

导出WS帧(作为 HAR的一部分)