node.js - 读取从 nodejs 发送的 cookie
问题描述
我有一个应用程序,我从后端设置 cookie,例如:
res.cookie('Authorization', 'Bearer ' + token, {httOnly: true});
登录后,我尝试读取前端的 cookie:
console.log('cookie', document.cookie)
但是这样做我没有得到任何数据console.log()
。
如何在我的示例中读取 cookie?
解决方案
首先,
Authorization
是一个请求 http 标头,因此客户端应该是修改该标头的人。由于您使用cookie来存储 jwt 令牌,因此无需使用
Authorization
http 标头,因为 cookie 会与后续请求一起自动发送。您可以只发送一个包含令牌的 cookie。
res.cookie('jwt', req.token, { httpOnly: true })
您可以使用
passport.jwt
中间件来检查jwt
cookie的存在const cookieExtractor = function (req: Request) { let token = null; const cookieName = config.jwt.cookieName; if (req && req.cookies) { token = req.cookies[cookieName]; } return token; };
推荐阅读
- android - 使用android studio运行时应用程序强制关闭
- react-native - 如何在异步函数中添加导航功能?
- http-post - Angular 8 无法将表单数据/多部分上传到服务器
- asp.net-core - 创建 SignalR 服务器以跨多个应用程序使用
- java - Arraylist 不工作,项目不堆叠
- sql-server - 选择没有记录的虚构列标题
- audio - FFmpeg 的 concat demuxer/protocol(用于连接 MP3 音频文件)创建一个加速和损坏的输出文件
- javascript - 如何在rails中一键获取多个文件?
- python - 尽量避免嵌套 for 循环
- tfs - 将 TFS 2010 迁移到 TFS 2017 后的问题