【发布时间】:2016-02-29 11:10:47
【问题描述】:
当我尝试在 localhost 服务器上运行我的 node.js 应用程序时,它没有运行并且需要进行必要的升级。我尝试运行代码,但出现以下错误:
服务器代码
var WebSocketServer = require('ws').Server,
ws = new WebSocketServer({port: 80}),
CLIENTS=[];
**new connection etablished**
ws.on('connection', function(conn) {
CLIENTS.push(conn);
conn.on('message', function(message) {
console.log('received: %s', message);
sendAll(message);
});
console.log("new connection");
conn.send("NOUVEAU CLIENT CONNECTE");
**if you close connection**
conn.on('close', function() {
console.log("connection closed");
CLIENTS.splice(CLIENTS.indexOf(conn), 1);
});
});
**send messeages vers all clients**
function sendAll (message) {
for (var i=0; i<CLIENTS.length; i++) {
var j=i+1;
CLIENTS[i].send("Message pour le client "+j+": "+message);
}
}
客户端代码
<p>
Result :<output name="" type="text" id="result" value"readonly"></output>
</p>
<input type="text" onchange="ws.send(this.value);">
</body>
<script>
var ws =new WebSocket('ws://localhost:80');
ws.onmessage=function(event){
document.getElementById("result").value=event.data;
}
</script>
【问题讨论】:
-
您是否也有一个 http 服务器来为您的 HTML 提供服务?因为看起来您尝试使用浏览器导航到 websocket。
-
不,我的应用程序中没有 http 服务器。
-
您将如何显示您发布的 HTML(客户端代码)?
-
我会将 http 服务器添加到我的代码中
-
如果您有任何解决方案,请告诉我们?
标签: javascript node.js websocket real-time