【发布时间】:2015-12-15 23:22:12
【问题描述】:
我是 NodeJS 的新手。所以我正在用 socket.io 编写 NodeJS 应用程序。
我了解如何分离控制器。在我的应用程序中,我创建了:
controllers/userCtrl.js
controller/marketCtrl.js 等
在userCtrl.js 控制器中,我这样做了:
exports.create = function(req, res) {
// Create user
}
// Other actions
在应用程序中我使用它:
// ...
var userCtrl = require('./controllers/userCtrl');
app.post('/user', userCtrl.create);
// ...
与模型相同。但我在app.js 中有很多与socket.io 相关的代码,不明白如何从app.js 中删除它(如控制器):
var frontend = io.of('/frontend');
frontend.on('connection', function (client) {
logger.info('Someone connected to frontend socket');
client.on('join', function (message) {
logger.info('In join event');
var token = message.token;
if (!token) {
logger.debug('No usertoken provided. Sending login required');
client.emit('join', {error: 103, message: 'Login required', data: null});
return;
}
//... etc..
我的问题是:如何将 socket.io 相关代码拆分成文件?它的最佳做法是什么?谢谢!
【问题讨论】:
-
看起来是同一个问题:stackoverflow.com/questions/24153138/…