Rak*_*aks 2 connect node.js express
使用express.js处理各种路由时我想将所有路由代码封装在一个单独的模块中,但是如何跨模块访问req和res对象,请参阅下面的代码主文件examples.js编写如下
var app = require('express').createServer();
var login = require('./login.js');
app.get('/login', login.auth(app.req, app.res));
app.listen(80);
Run Code Online (Sandbox Code Playgroud)
我想要的是登录处理代码写在一个名为login.js的单独模块/文件中,然后问题是如何在login.js中访问响应对象.我认为以下代码不起作用,因为req和res的类型没有解决.
exports.auth = function(req, res) {
res.send('Testing');
}
Run Code Online (Sandbox Code Playgroud)
因此,当我用节点example.js启动服务器时,我收到错误
'无法调用方法发送未定义'
Request和REsponse对象如何沿模块传递
这应该工作:
app.get('/login', login.auth);
Run Code Online (Sandbox Code Playgroud)
您的示例尝试将login.auth函数的返回值作为请求的get处理程序传递.以上代替将login.auth函数本身作为处理程序传递.
| 归档时间: |
|
| 查看次数: |
1712 次 |
| 最近记录: |