我已将文件更改为如下所示。javascript 控制台什么也不显示,网页什么也不显示。只是一个空白屏幕。有谁知道使用 socket.io 的网站。我想检查代码以了解它们是如何做到的,因为 socket.io 页面上的示例都不适合我。有人知道 iptables 文件中是否需要允许额外的端口吗?
使用 Chrome 浏览器,如果我转到 javascript 控制台并转到 Network 选项卡,我会成功,但最后一个调用显示 Pending ??? 好像挂了。这可能是防火墙问题吗?
/socket.io/1/websocket
GET
101
Switching Protocols
Pending
Other
127 B
0 B
Pending
它在第 168 行的 selector.js 中待定:
document.body.appendChild(menuDiv);
也许这就是为什么我什么都没看到?它正在正确地提供 socket.io/socket.io.js
以下文件:
//app.js
var express = require('express');
var app = express();
var http = require('http');
var server = http.createServer(app);
app.use(express.static(__dirname + '/public'));
var port = 80;
var io = require('socket.io').listen(server, {
log : false
});
io.sockets.on('connection', function(socket) {
socket.on('hi', function(data) {
console.log('yay');
socket.emit('hello');
});
});
server.listen(port);
公共/index.html
//index.html
<script src="http://localhost/socket.io/socket.io.js"></script>
<script>
var chat = io.connect('http://localhost/chat')
, news = io.connect('http://localhost/news');
chat.on('connect', function () {
chat.emit('hi');
});
chat.on('hello',function(){
console.log('yay got hello');
});
var socket = io.connect('http://localhost:80');
socket.on('connect', function () {
chat.emit('hi');
});
socket.on('hello',function(){
console.log('yay got hello');
});
</script>