目前我尝试为我们数据库周围的新事件创建一个推送服务器实例。当然,您会找到很多关于这个主题的信息。
我正在使用: http://static.brandedcode.com/nws-docs/#s6-p1
使用以下客户端实现:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script src="http://cdn.socket.io/stable/socket.io.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script>
<title></title>
</head>
<body>
<script type="text/javascript">
(function() {
var webSocket = new io.Socket('ws//test', {
port: 8080
});
webSocket.connect();
webSocket.on('connect',function() {
console.log('Client has connected to the server!');
});
webSocket.on('message',function(data) {
console.log('Received a message from the server!',data);
});
webSocket.on('disconnect',function() {
console.log('The client has disconnected!');
});
window.ws = webSocket;
}());
</script>
</body>
</html>
控制台返回:
Unexpected response code: 404
XMLHttpRequest cannot load http://ws//test:8080/socket.io/xhr-polling//1303822796984. Origin http://test is not allowed by Access-Control-Allow-Origin.
1303822796984GET http://ws//test:8080/socket.io/xhr-polling//1303822796984 undefined (undefined)
我不知道这个问题。
感谢您的帮助。
您好!
最佳答案
您正在尝试使用 Socket.io 直接连接到 WebSocket 服务器。 如果你只运行一个 WebSocket 服务器而不是 Socket.io 服务器,你可以使用普通的 HTML5 API 连接到 websockets。
例如:
var ws = new WebSocket("ws://domain:port");
ws.onopen = function(){}
ws.onmessage = function(m){}
ws.onclose = function(){}
您使用的是什么浏览器? 目前仅 Google Chrome 支持 WebSockets。在其他浏览器中测试会失败。
关于javascript - node.js WebSocket 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5790763/