相关疑难解决方法(0)

通过密码1006获取websockets关闭的原因

我想得到websockets关闭的原因,所以我可以向用户显示正确的消息.

我有

sok.onerror=function (evt) 
     {//since there is an error, sockets will close so...
       sok.onclose=function(e){
           console.log("WebSocket Error: " , e);}
Run Code Online (Sandbox Code Playgroud)

代码总是1006,原因总是"".但我想分别说明不同的结果原因.

例如,命令行给出了一个错误原因:"你不能删除它,因为数据库不会让你".但在Chrome的控制台上,原因仍然是"".

还有其他方法可以区分不同的结果原因吗?

javascript websocket

69
推荐指数
5
解决办法
11万
查看次数

Websockets继续与nginx和cloudflare断开连接

我的设置是cloudflare - > nginx - > node.js服务器.我已经确认它不是node.js服务器.问题似乎是cloudflare和nginx的结合.它只适用于nginx和node.js.

这是nginx为websocket连接记录的内容:162.158.75.125 - - [29/Oct/2016:00:01:47 +0000]"GET/HTTP/1.1"101 1047" - ""Mozilla/5.0(X11; Linux x86_64)AppleWebKit/537.36(KHTML,与Gecko一样)Chrome/53.0.2785.143 Safari/537.36"

nginx配置:

server {
    listen 443 ssl;
    server_name vectorwar.io;
    ssl_certificate /etc/nginx/ssl/cert.pem;
    ssl_certificate_key /etc/nginx/ssl/key.pem;

    location / {
        proxy_pass       http://localhost:7000;
        proxy_set_header Host      $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_read_timeout 31104000s;
        proxy_connect_timeout 31104000s;
        proxy_send_timeout 31104000s;

    }
}
Run Code Online (Sandbox Code Playgroud)

nginx websocket cloudflare

5
推荐指数
1
解决办法
864
查看次数

标签 统计

websocket ×2

cloudflare ×1

javascript ×1

nginx ×1