我正在使用nodejs& amp; expressjs。当用户单击重置邮件URL时,他将重定向到具有一些加密数据的控制器。
router.get('/:encryptedData',controller.resetPassword);
在此页面中,我可以访问req.params.encryptedData,当他提交重置表单时,它会发布到
localhost:3000/reset/0183d5992d2c79743d40ea2de6e60f8ffd4c8bb996f3d46971
和post路由器就是这样的
router.post('/:encryptedData',controller.postreset);
在控制器内我试图访问“加密数据”#39;使用req.params.encryptedData,但它显示' reset'在console.Can任何人都可以帮我解决这个问题。
感谢。
答案 0 :(得分:0)
因为,你的路线是:
localhost:3000/reset/0183d5992d2c79743d40ea2de6e60f8ffd4c8bb996f3d46971
,
后置路由器应如下所示:
router.post('/reset/:encryptedData',controller.postreset);
理想情况下,配置应如下所示:
var app = express();
var router = express.Router();
var resetRouter = express.Router();
// you can nest routers by attaching them as middleware:
router.use('/reset', resetRouter);
app.use('/', router);