【发布时间】:2019-03-26 07:04:35
【问题描述】:
我有一个已授权用户登录的 Node/Express 应用程序。然后我让该用户使用数据进行 ajax 调用到受保护的路由。我有中间件确保用户在继续路由之前经过身份验证。数据在 ajax 调用和路由之间丢失。有没有办法防止数据在这个中间件中丢失?
前端.js文件
$.ajax({
url: "/voted",
method: "POST",
data: { item1: "some data", item2: "other data" },
success: () => { console.log("success") },
failure: () => { console.log("failure") }
});
路由中间件
// data being lost here
const protectedMiddleware = (req, res, next) => {
if (req.isAuthenticated()) {
next();
}
else {
res.redirect("/login");
}
}
在我的 routes.js 文件中路由
app.post("/voted", protectedMiddleware, (req, res) => {
let item1 = req.query.item1;
let item2 = req.query.item2;
console.log(item1); // undefined
console.log(item2); // undefined
});
对于 item1 和 item2,我得到了未定义,而它们应该是“一些数据”和“其他数据”。
【问题讨论】:
标签: javascript node.js express