node.js - NodeJS express 自动创建的应用程序绑定到服务器
问题描述
我在 NodeJS 中使用express --view=pug expressapp
. 它创建了一个 app.js 文件
应用程序.js
var createError = require('http-errors');
...
var app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'pug');
app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use('/', indexRouter);
app.use('/users', usersRouter);
// catch 404 and forward to error handler
app.use(function(req, res, next) {
next(createError(404));
});
// error handler
app.use(function(err, req, res, next) {
// set locals, only providing error in development
res.locals.message = err.message;
res.locals.error = req.app.get('env') === 'development' ? err : {};
// render the error page
res.status(err.status || 500);
res.render('error');
});
//socket setup
var socket = require('socket.io');
var io = socket(app);
io.on('connection', function(socket) {
console.log('made socket connection')
})
module.exports = app;
最后我尝试绑定socket.io
到应用程序,但它希望像这样绑定到服务器
var server = app.listen(3000, function() {
});
//socket setup
var socket = require('socket.io');
var io = socket(server);
我也使用nodemon
,所以我使用nodemon expressapp
它运行应用程序,它在端口 3000 上运行。但是我找不到自动生成的快速文件设置服务器的位置。因为如果我这样尝试
//socket setup
var socket = require('socket.io');
var server = app.listen(3000, function() {
});
var io = socket(server);
我收到一个错误,表明端口 3000 已经在使用(本身)我将其更改为4000
并且它可以工作。不理想,如果您知道如何连接端口3000
将不胜感激。
解决方案
你会在目录下找到它bin/www
推荐阅读
- php - 更新两个表以生成发票和激活用户
- networking - 使用 DNS 域配置他的 Web 服务器
- java - java - 当密码在java中重置/更改时,如何使先前生成的JWT令牌无效
- mongodb - 在 GORM mongo 中缓存?
- python - 乘以 Python MaskedColumn
- php - PHP PDF 生成超级慢
- c++ - 现代 C++ 中的位掩码类型
- php - 如何在magento 1.9中选择“货到付款”或“预付”等运输方式来隐藏COD和在线支付等付款方式
- c# - 使用 c# 更改其他程序的名称
- c# - 已导入具有相同简单名称“IdentityModel”的程序集。请尝试删除其中一个引用或对其进行签名以启用并排