我正在向我的应用程序的后端发出jQuery发布请求。我首先使用Firebase的auth来检索用户的idToken并将其发送到我的后端以进行验证:
var user = firebase.auth().currentUser;
user.getIdToken(true).then(function(idToken) {
$.post('/setIdentity_learner', {Token: idToken}, () => {})
});
并在我的后端接收它,请检查令牌:
router.post('/setIdentity_learner', (req, res) => {
console.log("passed");
console.log(req.body.Token);
admin.auth().verifyIdToken(req.body.Token).then((user) => {
console.log(user);
})
})
但是这个简单的代码返回错误:
TypeError: Cannot read property 'Token' of undefined
我想我没有通过使用
req.body.Token
正确阅读它。那我该如何在Express Express后端正确接收令牌?我已经部署了这些代码
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());
我做了很多研究,尝试了建议,但没有成功。
有什么想法吗?谢谢
最佳答案
body-parser是一个中间件,因此您需要在路由之前使用它。将app.use(bodyParser.urlencoded({ extended: false })); app.use(bodyParser.json());
放在app.use(router_firebase);
可能有帮助之前。