感谢您提前帮助。我从控制台See Server running console log获得以下状态。下面的代码段是我的app.js代码,其中express和node服务器正在运行。如果您看到我的套接字代码,则在套接字连接下方的console.log未显示在服务器日志中。套接字不听我的消息。套接字未使用nodejs收听
我也上传了我在github上的代码示例,在这里您可以找到(github.com/ferozpuri/node-app)客户端套接字代码位于SocketController.js中的一个角度控制器文件。
这是我的app.js文件代码,因为您可以看到“连接已建”的控制台日志从不显示。和套接字控制台一样。
var express = require('express');
var http = require('http');
var path = require('path');
var favicon = require('static-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var engines = require('consolidate');
var routes = require('./routes');
var users = require('./routes/user');
var app = express();
var server = require('http').Server(app);
var io = require('socket.io')(server);
// view engine setup
//app.set('views', path.join(__dirname, 'views'));
//app.set('view engine', 'jade');
app.engine('html', engines.nunjucks);
app.set('view engine', 'html');
app.set('views', path.join(__dirname, 'views'));
app.use(favicon());
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded());
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use(app.router);
app.get('/', routes.index);
app.get('/users', users.list);
/// catch 404 and forwarding to error handler
app.use(function (req, res, next) {
var err = new Error('Not Found');
err.status = 404;
next(err);
});
/// error handlers
// development error handler
// will print stacktrace
if (app.get('env') === 'development') {
app.use(function (err, req, res, next) {
res.render('error', {
message: err.message,
error: err
});
});
}
// production error handler
// no stacktraces leaked to user
app.use(function (err, req, res, next) {
res.render('error', {
message: err.message,
error: {}
});
});
io.on('connection', function (socket) {
console.log('A connection was made!');
socket.on('chat.message', function (message) {
console.log('New Message : ' + message);
});
});
module.exports = app;
我没有收到来自节点服务器套接字响应。请让我知道,如果我没有正确解释或任何东西不在这里。
服务器端口列表中,你可以看到这个screenshort或我的项目结构
Project structure & app listening port OR NPM START CODE
你是否在某处叫'app.listen(port)'或'server.listen(port)'?您的服务器没有收听任何内容,因此您无法访问它。 – Seblor
我也上传了我在github上的代码示例,在这里你可以找到我的代码:github.com/ferozpuri/node-app只是几个文件来创建我的场景 – ferozpuri
你需要'server'(来自'http'模块)听,不直接表示('app')。 (参考https://socket.io/docs/#using-with-express-3/4) – Seblor