【发布时间】:2015-09-22 17:43:33
【问题描述】:
我正在使用一个对令牌进行身份验证的中间件,但问题不是 sn-p,当我实例化函数时问题会出现。
这是我的代码:
router.use(authRequirer(req, res, next));
好的,这里是路由文件:
let router = express.Router();
// Middleware
import authRequirer from '../util/authRequirer';
// Controllers
import AuthCtrl from '../controllers/authCtrl';
import UserCtrl from '../controllers/userCtrl';
let authCtrl = new AuthCtrl();
let userCtrl = new UserCtrl();
router.get('/', (req, res) => {
res.json({ message: "Hey, im working" });
});
// Login, Register, setup admin
router.get('/setup' , authCtrl.setup);
router.post('/register', authCtrl.register);
router.post('/login' , authCtrl.login);
// Autenticacion requerida
router.use(authRequirer(req, res, next));
router.route('/users')
.get(userCtrl.getAll)
.post(userCtrl.create);
router.route('/users/:username')
.get(userCtrl.getOne)
.put(userCtrl.edit)
.delete(userCtrl.delete);
export default router;
我认为我没有做任何不正常的事情,但是当我运行代码时,它会抛出以下跟踪:
/home/nano/Dev/omgfriki-api/app/routes/apiroutes.js:44
router.use((0, _utilAuthRequirer2['default'])(req, res, next));
^
ReferenceError: req is not defined
为什么没有定义 req?据我了解,它是在您调用路由器时定义的。
无论如何,我使用 Babel 和一个 require 钩子来编译这些东西,但 90% 认为这不是问题。
【问题讨论】: