Javascript Socket.io和express.js,如何使其工作?
我在网上看到了很多变化,但似乎没有什么对我有用。如何使socket.io 1.3.5和express 4.12.2正常工作 这就是我现在拥有的。我得到的错误是404,因为服务器无法提供Javascript Socket.io和express.js,如何使其工作?,javascript,node.js,express,socket.io,Javascript,Node.js,Express,Socket.io,我在网上看到了很多变化,但似乎没有什么对我有用。如何使socket.io 1.3.5和express 4.12.2正常工作 这就是我现在拥有的。我得到的错误是404,因为服务器无法提供/socket.io/socket.io.js app.js: var app = express(); var server = require('http').createServer(app); var io = require('socket.io').listen(server); io.on('con
/socket.io/socket.io.js
app.js:
var app = express();
var server = require('http').createServer(app);
var io = require('socket.io').listen(server);
io.on('connection', function (socket) {
console.log('connected');
});
index.hjs:
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io.connect();
socket.on('news', function (data) {
console.log(data);
});
</script>
var socket=io.connect();
socket.on('news',函数(数据){
控制台日志(数据);
});
注意:我也尝试过使用cdn
,但没有成功。要在express中使用socket.io,我们需要对默认费用没收进行一些更改
app.js:
var app = express();
var server = require('http').createServer(app);
var io = require('socket.io').listen(server);
io.on('connection', function (socket) {
console.log('connected');
});
io.js
bin/www:
现在,对于索引模板,您应该像下面这样使用
<script src="/socket.io/socket.io.js"></script>
<script>
$(document).ready(function(){
var socket = io();
socket.on('news', function (data) {
console.log(data);
});
});
});
</script>
$(文档).ready(函数(){
var socket=io();
socket.on('news',函数(数据){
控制台日志(数据);
});
});
});
这是一个有效的代码
谢谢谢谢!似乎我所缺少的只是io.attach(服务器)。
var app = require('../app');
var io = require('../io');
var server = require('http').Server(app);
io.attach(server);
server.listen(8080);
<script src="/socket.io/socket.io.js"></script>
<script>
$(document).ready(function(){
var socket = io();
socket.on('news', function (data) {
console.log(data);
});
});
});
</script>