2011-04-10 28 views

回答

20

首先,我會說有更好的機制來測試你的JavaScript在一個websocketless環境。例如,你可以在IE9中運行你的JavaScript,它不會實現協議。在Firefox 4中,它們現在仍然處於禁用狀態,如果這更符合您的風格。

假設您有一些很好的理由需要在無網格的Chromium中測試,我認爲您運氣不好。在Chromium中禁用WebSocket並不是一個簡單的機制。它不是作爲命令行開關構建的,也沒有可配置的標誌。由於沒有任何機制可以在本地實現,所以我不會建議花時間測試場景。用戶使用的每個Chromium版本(例如9+)都啓用了Websocket。

所有這一切說,如果你真的需要禁用的WebSockets,你可以不用重新編譯瀏覽器最接近會放棄相關變量的測試代碼:

WebSocket = undefined; 

會相對蠻力,但應該工作。你甚至可以創建一個擴展,將JavaScript插入到你訪問的每一個頁面中,以獲得真正的無網絡體驗(假設這對於你的用例來說也是有價值的)。

+15

/Applications/Google \ Chrome.app/Contents/MacOS/Google \ Chrome --disable-web-sockets – LostInQuery 2013-03-31 00:17:00

+13

讓websockets「支持」並讓它們「工作」並不是同一回事。有多種原因支持ws的瀏覽器會回落到另一個傳輸中。想要在Chromium上測試這種情況並非無用。 – darma 2014-02-05 13:35:15

+0

僅用於Windows的Chrome 61「--disable-web-sockets」在使用http://demos.kaazing.com/echo/進行測試時不起作用 – bbodenmiller 2017-11-11 08:02:46