簡體   English   中英

無法連接到Websocket服務器

[英]Can't connect to the websocket server

我是前端上websocket的新手。 這個問題可能很愚蠢:)下面的html文件用於嘗試websocket。 如果從后端Web服務呈現此頁面,則可以成功建立連接。 但是,如果使用瀏覽器從磁盤打開此文件,則無法建立連接。

<!-- websockets.html -->
<input id="input" type="text" />
<button onclick="send()">Send</button>
<pre id="output"></pre>
<script>
    var input = document.getElementById("input");
    var output = document.getElementById("output");
    var socket = new WebSocket("ws://localhost:8081/echo");

    socket.onopen = function () {
        output.innerHTML += "Status: Connected\n";
    };

    socket.onmessage = function (e) {
        output.innerHTML += "Server: " + e.data + "\n";
    };

    function send() {
        socket.send(input.value);
        input.value = "";
    }
</script>

此問題的根本原因是來源檢查。 如果從本地文件系統打開文件,則源將與服務端不同。 如果在服務器端禁用checkOrigin,則可以建立websocket連接。

暫無
暫無

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

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