Node.js   发布时间:2022-04-24  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了node.js – SocketIO-GET http:// localhost:3000/socket.io /?EIO = 3&transport = polling&t = 1418187395022-0 404(未找到)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用带有express的socketIO。

在我的项目中我有一个登录页面一个主页。
当我成功登录我导航到本地主机:3000 / home,我得到这个错误

GET http://localhost:3000/socket.io/?EIO=3&transport=polling&t=1418187395022-0 404 (Not Found)

我没有在我的app.js(由express创建的项目)中进行任何修改

Index.js:

var express = require('express');
var router = express.Router();
var http = require('http');
var fs = require('fs');
var io = require('socket.io')(http);
/* GET home page. */
router.get('/',function(req,res) {
  res.render('index',{ title: 'Express' });
});

router.get('/home',res) {
  res.render('home',{ title: 'Express' });
});

io.on('connection',function(socket){
    console.log("User Connected");
  socket.on('chat message',function(msg){
    io.emit('chat message',msg);
    console.log("message");
  });
   socket.on('disconnect',function(msg){
    console.log("User DisConnected");
  });

});

router.post('/authenticate',res) {
    fs.readFile("./public/Verification/Users.json","utf8",function (err,data) {
        if (err) 
            console.log(err);
        else{
            var result = JSON.parse(data);
            for(var i=0;i<result.Users.length;i++){
                if(req.body.username == result.Users[i].username && req.body.password ==     result.Users[i].password){
                    console.log("success!!!!!!!!!!!!!!");
                    res.LOCATIOn("home");
                    res.redirect("home");
                }
            }
        }
        });
});

module.exports = router;

当我导航到localhost:3000 / home时,我会收到此错误。我是新来的socketIO和express。
请告诉我,如果我错过了一些东西。

谢谢

编辑:

在我的layout.jade中我定义了这样的socketio:

script(src='https://cdn.socket.io/socket.io-1.2.0.js')

解决方法

如果您正在运行Express 4,在我看来,您似乎缺少代码行:

var app = express();
var server = app.listen(3000);

这将启动您的Web服务器并将其设置为端口3000.请参阅骨骼简单的Express 4应用程序:http://expressjs.com/4x/api.html

然后,要启动socket.io,你可以添加

var io = require('socket.io').listen(server);

而且,这行不需要:

var http = require('http');

大佬总结

以上是大佬教程为你收集整理的node.js – SocketIO-GET http:// localhost:3000/socket.io /?EIO = 3&transport = polling&t = 1418187395022-0 404(未找到)全部内容,希望文章能够帮你解决node.js – SocketIO-GET http:// localhost:3000/socket.io /?EIO = 3&transport = polling&t = 1418187395022-0 404(未找到)所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。