簡體   English   中英

WebSocket 客戶端在 Google Chrome 上返回錯誤 1006

[英]WebSocket client-side returning error 1006 on Google Chrome

我有同樣的問題,我是 Node js 的新手,所以我不知道如何解決它。 我正在嘗試將 WebSocket 服務器連接到端口 8000,並且我正在使用 WSS。 我在服務器上沒有任何錯誤並且即使沒有連接到服務器也運行它仍然給出錯誤所以我知道它在客戶端。

錯誤原因是 0 錯誤代碼是 1006(我從 onerror 得到了 e.reason)

我正在使用谷歌瀏覽器,我不知道它是否適用於其他瀏覽器。 應用程序.js

    http.createServer(function(req, res) {
      res.writeHead(200);
      req.on('data', function(e) {
        res.write(e);
      })
      req.on('close', function() {
        console.log('CONNECTION CLOSED')
      })
    }).listen(8000);

索引.html


<p id="status">Connecting...</p>
<input id="message" />
<button id="submit">Send</button>
<script>
  var s = new WebSocket("wss://StarliteServer.cs641311.repl.run:8000", ["soap", "wamp"]);
  s.onopen = function() {
    document.getElementById("status").innerHTML="Connected";
  }
  document.getElementById("submit").addEventListener("click", function() {
    s.send(document.getElementById("message").value);
  });
  s.onmessage = function(e) {
    alert(e.data);
  }
  s.onclose = function(e) {
    document.getElementById("status").innerHTML = "ERROR: "+e.code
  }
    </script>

如果您的瀏覽器客戶端報告關閉代碼 1006,那么您應該查看 websocket.onerror(evt) 事件以獲取詳細信息。

關閉代碼 1006 是一個特殊代碼,表示瀏覽器實現異常(本地)關閉了連接。

從以下鏈接了解更多信息

http://tools.ietf.org/html/rfc6455#section-7.4.1

我正在做一個 webrtc 項目。 我觀察到當用戶切換到另一個頁面或 Chrome 在 Android 中進入后台進程時會發生這種情況。 或者在 Android 手機來電的情況下。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM