节点js中使用socket.io的聊天应用程序

时间:2020-06-09 07:46:48

标签: node.js websocket socket.io

我将Socket.io与Express一起使用。在我的项目中,我有一个登录页面,注册页面等等 页面和主页。成功登录后,我导航到本地主机:8000 / chatter 此错误:

GET /socket.io/?EIO=3&transport=polling&t=NANyVHH 404 59.151 ms - 1908

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

app.js刚刚在localhost 8000上创建了一个服务器,并在另一个名为socketFile.js的文件中使用此代码

var socket = io();
var message = document.getElementById('message'),
      handle = document.getElementById('handle'),
      btn = document.getElementById('send'),
      output = document.getElementById('output'),
      feedback = document.getElementById('feedback');

// Emit events
btn.addEventListener('click', function(){
    socket.emit('chat', {
        message: message.value,
        handle: handle.value
    });
    message.value = "";
});

message.addEventListener('keypress', function(){
    socket.emit('typing', handle.value);
})

// Listen for events
socket.once('connect', socketConn => {
socket.on('chat', function(data){
    feedback.innerHTML = '';
    output.innerHTML += '<p><strong>' + data.handle + ': </strong>' + data.message + '</p>';
});

socket.on('typing', function(data){
    feedback.innerHTML = '<p><em>' + data + ' is typing a message...</em></p>';
});
}); 

我已经在app.js屁股中创建了服务器

const PORT =process.env.PORT || 8000;

app.listen(PORT, console.log('Server started on port : ' + PORT))
// catch 404 and forward to error handler
app.use(function(req, res, next) {
next(createError(404));
});

Facing this error

1 个答案:

答案 0 :(得分:0)

您需要这样的东西:

var app     = express();
var server  = require('http').createServer(app);
var io      = require('socket.io').listen(server);

server.listen(process.env.PORT || 8000);