我正在使用 swaggerexpress 中间件和 swagger。我无法使用 socket.io将 socket.io 连接到我创建的服务器的正确方法是什么?
'use strict';
var SwaggerExpress = require('swagger-express-mw');
var app = require('express')();
var io = require('./api/helpers/socketio');
module.exports = app;
var config = {
appRoot: __dirname
};
SwaggerExpress.create(config, function(err, swaggerExpress) {
if (err) { throw err; }
swaggerExpress.register(app);
app.listen(10010, function () {
console.log('Application is start listening on localhost:10010');
});
io.on('connection',function(socket){
console.log("A user is connected: " + socket.id);
io.emit('message', "Welcome")
});
});
io.attach(app);
使用这种方法,我的服务器无法启动,在附加到应用程序的 socket.io 上出现错误。
如果您可以为 socket.io 使用不同的端口,您可以执行以下操作:
var io = require('socket.io')(10011);
// Or maybe in your case:
// var io = require('./api/helpers/socketio')(10011);
io.on('connection', function(socket) {
console.log('user connected');
});
在客户端上,您可以像这样连接到它:
var socket = io('http://localhost:10011');
socket.on('connect', function() {
console.log('Socket connection established');
});
我是一名优秀的程序员,十分优秀!