Android手机上浏览器不支持带端口号wss解决方案

Posted coffee_cn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android手机上浏览器不支持带端口号wss解决方案相关的知识,希望对你有一定的参考价值。

首先抄个示例过来,命名为wss-test.html,然后传到服务器:

<!DOCTYPE HTML>  
<html>  
<head>  
    <meta http-equiv="content-type" content="text/html" />  
    <meta name="author" content="https://www.baidu.com" />  
    <title>websocket test</title>  
    <script>
    var ws;
    function Connect(){
        try{
            ws = new WebSocket(\'wss://xxxx.com:9433\');
        }catch(e){
            alert(\'error\');
            return;
        }
        ws.onopen = sOpen;
        ws.onerror = sError;
        ws.onmessage= sMessage;
        ws.onclose= sClose;
    }
    function sOpen(){
        alert(\'connect success!\');
    }
    function sError(e){
        alert("error " + e);
    }
    function sMessage(msg){
        alert(\'server says:\' + msg);  
    }
    function sClose(e){
        alert("connect closed:" + e.code);
    }
    function Send(){
        ws.send(document.getElementById("msg").value);
    }
    function Close(){
        ws.close();
    }
    </script>
</head>  
   
<body>  
<input id="msg" type="text">  
<button id="connect" onclick="Connect();">Connect</button>  
<button id="send" onclick="Send();">Send</button>  
<button id="close" onclick="Close();">Close</button>

</body>  
   
</html>

http://www.xxx.com/wss-test.html

苹果手机访问正常

安卓手机访问失败

 

解决办法nginx

 

 

openssl x509 -in xxx_com.pem -out xxx_com.crt

 

以上是关于Android手机上浏览器不支持带端口号wss解决方案的主要内容,如果未能解决你的问题,请参考以下文章

怎么在域名里面去掉端口号

flask url_for后没有带端口号

域名如何隐藏端口号

Node wss Websocket 在桌面上工作,而不是在移动设备上

nginx listen 端口 443 80 https 和 wss

正则表达式