POST http://localhost:3000/socket.io/?EIO=3&transport=polling&t=NQUneY3 ejs 和 nodejs 中的 400(错误请求)
POST http://localhost:3000/socket.io/?EIO=3&transport=polling&t=NQUneY3 400 (Bad Request) in ejs and nodejs
我对此很陌生socket.io。
我有代码这是一个节点服务器代码:
var express = require("express");
var app = express();
var http = require("http").createServer(app);
var socketIO = require("socket.io")(http);
var socketID = "";
socketIO.on("connection", function (socket) {
console.log("User is conneected ", socket.id);
socketID = socket.id;
});
这里是 ejs 文件的代码:
......
<script src="/public/js/socket.io.js"></script>
<script>
......
var socketIO = io("http://localhost:3000");
......
</script>
......
而 socket.io.js 文件是 here:
我试过了,但没有任何效果。每当我刷新页面时都会弹出相同的错误。
我对此很陌生,我真的很想尽快解决它!!
socket.on
:
之后我已经有了一个监听函数
http.listen(3000, function () {
console.log("Server has started running!!");
.........................
.............
})
下面的代码对我有用。
var express = require('express');
var app = express();
var server = require('http').Server(app);
var io = require('socket.io')(server);
io.sockets.on('connection', function (socket) {
console.log(socket);
})
server.listen(3000, function(){
console.log('listening on *:3000');
});
<script src="/socket.io/socket.io.js" > </script>
<script>
$(function () {
var socket = io.connect();
});
</script>
您提到的 socket.io.js 与 https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.2.0/socket.io.js.. 中的相同。检查 package.json 中已安装的 serail io 版本,并将相同的版本放在此处的路径套接字中。io/2.2.0 它将工作
我对此很陌生socket.io。
我有代码这是一个节点服务器代码:
var express = require("express");
var app = express();
var http = require("http").createServer(app);
var socketIO = require("socket.io")(http);
var socketID = "";
socketIO.on("connection", function (socket) {
console.log("User is conneected ", socket.id);
socketID = socket.id;
});
这里是 ejs 文件的代码:
......
<script src="/public/js/socket.io.js"></script>
<script>
......
var socketIO = io("http://localhost:3000");
......
</script>
......
而 socket.io.js 文件是 here:
我试过了,但没有任何效果。每当我刷新页面时都会弹出相同的错误。 我对此很陌生,我真的很想尽快解决它!!
socket.on
:
http.listen(3000, function () {
console.log("Server has started running!!");
.........................
.............
})
下面的代码对我有用。
var express = require('express');
var app = express();
var server = require('http').Server(app);
var io = require('socket.io')(server);
io.sockets.on('connection', function (socket) {
console.log(socket);
})
server.listen(3000, function(){
console.log('listening on *:3000');
});
<script src="/socket.io/socket.io.js" > </script>
<script>
$(function () {
var socket = io.connect();
});
</script>
socket.io.js 与 https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.2.0/socket.io.js.. 中的相同。检查 package.json 中已安装的 serail io 版本,并将相同的版本放在此处的路径套接字中。io/2.2.0 它将工作