如何解决Angular Http Delete 请求返回未定义的 [MEAN stack]
我正在尝试在用户单击注销时从服务器中删除刷新令牌。
auth.service.ts
deleteToken(refreshToken:any){
return this.http.delete(`${environment.baseUrl}/logout`,refreshToken).toPromise()
}
header.component.ts
refreshToken = localStorage.getItem('refreshToken')
logout = async()=>{
try {
console.log(this.refreshToken)
await this.authService.deleteToken({refreshToken:this.refreshToken})
localStorage.removeItem("refreshToken");
localStorage.removeItem("token");
this.router.navigateByUrl('/login');
} catch (error) {
console.log(error)
}
}
console.log(this.refreshToken) 是来自本地存储的令牌,因此可以工作。
后端 authController.js
exports.deleteToken = async (req,res) => {
try {
let user = await User.findOne({ refreshToken: req.body.refreshToken })
console.log(req.body.refreshToken)
if (req.body.refreshToken == user.refreshToken) {
await user.updateOne({ $unset: { refreshToken: "" } });
res.sendStatus(200);
} else {
res.status(400).json({ message: "Error while deleting token" })
}
} catch (error) {
console.log(error)
}
}
当我 console.log(req.body.refreshToken) 它是未定义的
解决方法
如果此解决方案正确,则删除请求中没有正文。所以请求应该是这样的:
def update_info():
now = datetime.datetime.now()
lb2.configure(text=now)
root.after(1000,update_info)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。