Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can i temporarily disable websocket in Google Chrome?

I want temporarily disable websocket in Google Chrome to debug a javascript to make sure it work for any browser without websocket support.

like image 337
Cygan Avatar asked Apr 10 '11 13:04

Cygan


People also ask

What can block WebSockets?

These are the so-called Websocket connections (more information at the bottom of this article). A blocked connection can be caused by: AdBlocker / Cookie blocker browser extensions. Antivirus and Firewall software.

How do I stop WebSocket server?

According to the ws documentation, you need to call websocket. close() to terminate a connection.

Can Firewall block WebSockets?

Since firewalls typically simply enforce the rules for inbound traffic rejection and outbound traffic routing (usually through the proxy server), there usually are no specific WebSocket traffic-related firewall concerns.


1 Answers

To begin, I'd say that there are better mechanisms to test your JavaScript in a websocketless environment. You could run your JavaScript in IE9, for instance, which doesn't implement the protocol. They're still disabled for the moment in Firefox 4 as well, if that's more your style.

Assuming that there's some good reason that you need to test in a websocketless Chromium, I think you're out of luck. There's not a trivial mechanism to disable WebSockets in Chromium. It's not built in as a command-line switch, nor is there a configurable flag. Since there's no mechanism to make this happen natively, I wouldn't suggest spending time testing the scenario. Every version of Chromium that your users use (e.g. 9+) has websockets enabled.

All that said, if you really need to disable websockets, the closest you can get without recompiling the browser would be to drop the relevant variables in your test code:

WebSocket = undefined; 

would be relatively brute force, but should work. You could even create an extension to inject that JavaScript into every page you visit, for a truly websocketless experience (assuming, again, that that's somehow valuable for your use case).

like image 128
Mike West Avatar answered Sep 30 '22 06:09

Mike West