簡體   English   中英

客戶端無法將數據發送到服務器端?

[英]client can't send data to server side?

我想建立一個從瀏覽器到服務器端的連接,該連接用node.js編寫

當客戶端連接到服務器時,服務器端將向客戶端發送消息,並且當客戶端單擊“發送”按鈕時,服務器將接收消息。

但是客戶端可以從服務器端接收消息,但是服務器端不能從客戶端接收消息

客戶端代碼

<center>
    <input id="send" type="submit" value="send">
    <p id="recv"></p>
</center>

<script src="library/socket.io.js"></script>
<script type="text/javascript">
    var socket = io.connect("http://127.0.0.1:7000");
    var send = document.getElementById("send");
    var recv = document.getElementById("recv");

    send.addEventListener("click",function () {
        socket.emit("message","message_from_client");
    });

    socket.on("message",function (data) {
        recv.innerHTML = data;
    });
</script>

服務器端客戶端

var socket = require("socket.io").listen(7000);

socket.on("connect",function () {
    console.log("connect");
    socket.emit("message","message_from_server");
});

socket.on("message",function (data) {
    console.log(data);

});

您可以在服務器端嘗試此代碼嗎? 我看到了它的工作原理。

var socket = require("socket.io").listen(7000);

socket.on("connect", function(client) {
    console.log("connect");
    client.emit("message", "message_from_server");

    client.on("message", function(data) {
        console.log(data);

    });
}); 

您可以在此鏈接上查看示例代碼和文檔

嘗試在客戶端上使用io.sockets.emit('event', message) 這會將消息發送到所有連接的套接字,包括服務器。

暫無
暫無

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

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