今日、私はhttp://gonzalo123.com/2011/05/23/real-time-notifications-part-ii-now-with-node-js-and-socket-io/で Gonzalo Ayuso によるチュートリアルに従いますが、それは可能ですメッセージを送信しない ここに私のserver.jsがあります
var http = require('http');
var io = require('socket.io');
server = http.createServer(function(req, res){
});
server.listen(8000);
//socket.io
var socket = io.listen(server);
socket.set('transports', ['websocket']);
console.log("Start");
socket.on('connection', function(client){
client.on('message', function(msg){
console.log(msg);
socket.broadcast(msg);
})
});
そしてclient.html
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Comet Test</title>
</head>
<body>
<p><a id='customAlert' href="#" onclick='socket.send("customAlert")'>publish customAlert</a></p>
<p><a id='customAlert2' href="#" onclick='socket.send("customAlert2")'>publish customAlert2</a></p>
<script src="http://localhost:8000/socket.io/socket.io.js" type="text/javascript"></script>
<script type="text/javascript">
// Start the socket
var socket = io.connect('http://localhost:8000');
socket.on('message', function(msg){
console.log(msg);
});
</script>
</body>
</html>
サーバーで実行するために少し編集しました。しかし、クライアントはサーバーにメッセージを送信しません。誰でも私を助けることができますか?私の悪い英語でごめんなさい。
クライアントがサーバーに接続できないことがわかりましたが、その理由はわかりませんか?
私のコンピューターは、Apacheサーバーでxamppを実行しています。多分それは問題ですか?
更新: トランスポートを xhr-polling に設定したところ、接続が成功しました。Websocketを受け入れないのはなぜですか?