Я создаю NodeJS Express Project с экспресс-генератором.И я хочу использовать SocketIO, но кажется, что с настройками произошла ошибка.
const express = require('express');
const router = express.Router();
var http = require('http').Server(router);
var io = require('socket.io')(http);
io.on('connection', function(socket){
socket.on('chat message', function(msg){
console.log('message: ' + msg);
});
});
[Клиентский файл PUG] Я установил SocketIO с NPM, и в документе сказано, что я могу использовать
<script src="/socket.io/socket.io.js"></script>
Нокогда я использую это, кажется, что не работает, поэтому я просто использую CDN-версию socketIO на стороне клиента.
script(src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.2.0/socket.io.js")
и это мой код JS на стороне клиента
$(function () {
var socket = io();
$('form').submit(function(e){
e.preventDefault(); // prevents page reloading
socket.emit('chat message', $('#m').val());
$('#m').val('');
return false;
});
});
И я получилнекоторые сообщения об ошибках из консоли сервера и консоли клиента
[Ошибка на стороне сервера]
[Ошибка на стороне клиента]
Я думаю, что это проблема со стороны серверного кода с исходным кодом с маршрутизатором что-то.потому что все примеры кода похожи на это
var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);