跟踪来自Web检查员的服务器推送消息

时间:2012-04-12 15:56:48

标签: firefox google-chrome firebug fiddler web-inspector

这个疑问实际上源于我对websockets的一个问题...... Differences between socket.io and websockets

我在想为什么像谷歌Chrome浏览器/ firebug / fiddler这样的网络检查员在使用诸如websockets / channel-api等推送技术时无法跟踪消息,(或者有办法做到这一点吗?) 这是因为我们正在从http?

升级我们的连接

3 个答案:

答案 0 :(得分:1)

WebSockets未使用HTTP请求。 当您在JS中创建WebSocket时,浏览器会创建与服务器的TCP套接字连接,并且此连接将作为基于流的处理(因为TCP),当浏览器接收到单个消息的足够数据时,它会使用通过伪装数据的onmessage事件通知WebSocket对象。

从技术上讲,实现所有传入消息的跟踪并将其丢弃到控制台中应该不难。 但请注意,大多数可能使用WebSockets的复杂实时应用程序都有太多的数据,这会极大地减慢你的Inspector,有时甚至会在几秒钟内发出一百条消息。

恕我直言,主要的浏览器将使用高级过滤实现WebSockets日志记录系统,这将允许显示必要的消息。

答案 1 :(得分:0)

Fiddler 跟踪WebSocket消息,但由于它们不是HTTP,因此它们不会直接在会话列表中呈现。见http://blogs.msdn.com/b/fiddler/archive/2011/11/22/fiddler-and-websockets.aspx

答案 2 :(得分:0)

这篇文章的答案已经过时了。正如作者所说,这只是一个时间问题。 Chrome现在可以很好地记录WebSocket检测

http://blog.kaazing.com/2012/05/09/inspecting-websocket-traffic-with-chrome-developer-tools/