簡體   English   中英

WebSocket.onmessage不起作用

[英]WebSocket.onmessage doesn't work

我正在使用django-channels在django應用程序中實現套接字。

我已經按照指示進行了 ,並且有效:

socket = new WebSocket("ws://127.0.0.1:8000/chat/");
socket.onmessage = function(e) {
    alert(e.data);
}
socket.onopen = function() {
    socket.send("hello world");
}

但是當我使用自己的代碼時:

<script type="text/javascript">
    $(document).ready(function() {
        socket = new WebSocket("ws://127.0.0.1:8000/chat/");
        socket.onmessage = function (e) {
            console.log(e.data);
        };
        $('form').submit(function () {
            socket.send($('form>input[type="text"]').val());
        });
    });
</script>

我的django服務器收到了消息,但未調用socket.onmessage。 我要去哪里錯了?

將原始代碼添加到ready塊不起作用?

socket.onopen = function() {
    console.log("socket open")
    socket.send("hello world");
}

可能是該頻道尚未打開

那是起作用的代碼

    socket = new WebSocket("ws://127.0.0.1:8000/chat/");
    socket.onmessage = function (e) {
        alert(e.data);
    };
    $(document).ready(function () {
        socket.onopen = function() {
            $('button').click(function () {
                socket.send($('#mes_input').val());
            });
        }
    });

暫無
暫無

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

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