websocket手機端無法通訊

2021-07-15 16:51:59 字數 766 閱讀 4134

之前做乙個專案需要手機與內網機器通訊

由於手機端由h5完成,所以採用websocket的方式

在電腦上除錯時一切正常

用手機訪問時卻在握手時中斷連線,握手不成功

後來研究了一下握手協議

如下("http/1.1 101 switching protocols\r\n");

("upgrade: websocket\r\n");

("connection: upgrade\r\n");

("server:beetle websocket server\r\n");

("access-control-allow-credentials:true\r\n");

("accept-encoding: gzip, deflate, sdch\r\n");

("accept-language: zh-cn,zh;q=0.8\r\n");

("access-control-allow-headers:content-type\r\n");

("sec-websocket-accept:" + key + "\r\n");

在這裡也沒有發現問題...

為了實現乙個猜測,在最後一條加了乙個\r

最後變成 

("sec-websocket-accept:" + key + "\r\n\r");

然後就握手成功,通訊ok

問題到這裡就解決了。。。。 個人猜測可能是手機端相容上的問題。  既然要求在最後一定要加\r\n,那也許是手機端還需要有乙個結束標識?

Autobahn實現WebSocket通訊

最近開發中需要通過ws協議通訊,於是做了些功課,現在websocket用的比較多的就是autobahn,由於使用方便所以選擇了它。然後就是使用websocketconnection這個類,使用方法直接上 吧mconnect.connect wsurl,new websockethandler ove...

webSocket無法注入bean問題解決方案

component serverendpoint value messagesocket public class messagewebsocket onopen public void onopen session session,pathparam userid integer userid o...

websocket客戶端的實現

coding utf 8 importwebsocket 第三方核心庫 fromthreadingimportthread importstruct fromctypesimport importmultiprocessing importos 服務端傳送訊息 defon message ws,me...