websocket使用時遇到的僞技術問題

vertx是一個輕量,靈活的後端框架,最近在使用vertx時使用了它的websocket,對於websocket相信搞過開發的都 不會很陌生,在vertx中的使用也很簡單,大概如下

HttpServerOptions options =new HttpServerOptions();

options.setReuseAddress(true).setSoLinger(0);

options.setPort(9000);

vertx.createHttpServer(options).websocketHandler(websocket-> {

//連接成功時的處理

}).listen(listenHandler-> {

//監聽成功的處理

});

        就在我以爲王子和灰姑娘從此過上了幸福生活的時候,悲劇開始了,客戶端始終連接不上,顯示無法建立連接,我是在本機調試的,IP都是127.0.0.1,不可能有防火牆的問題,那是什麼原因呢?於是開始各種折騰,嘗試改成各種寫法,寥寥幾行代碼改來改去又能改出什麼花呢。百度和谷歌上搜索相關問題也都是簡單帶過,似乎大家一路走過都是平坦大道,唯獨就是我掉坑裏了。開始有點懷疑人生了。鬱悶的出去吃了個飯,散了個步,回來後仍然是一籌莫展,無意間發現了charles,對,就是這個charles,這個抓包工具charles,發現了它我就知道我找到了答案,果不其然,關掉charles的windows proxy,websocket就愉快地連上了!

        這下大家知道爲什麼我叫它僞技術問題了吧,最終問題的解決不是因爲代碼本身,而是開發工具使了拌子。charles工具本身是非常好用的,相信也是很多開發同學日常工作中最親密的夥伴。包括這次這個,一共有兩個比較著名的坑,希望大家注意了

        1.如果windows proxy在勾選的狀態關掉charles,瀏覽器訪問網站是打不開的,這時也請注意把檢查charles作爲排錯的一個選項

        2。windows proxy在勾選狀態時,呃,又是這個windows proxy選項,ws://請求時無法訪問的,千萬注意了。

        好了,問題解決,自信心瞬間恢復。程序猿嘛,就這點出息!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章