用户 JWT 作为仅 HTTP cookie 发送到浏览器。我的问题是,向浏览器传达显示名称和用户数据库 ID 等的最佳方式是什么?
我知道信息可以并且确实在 JWT 有效负载中设置,但是使该 cookie (JWT) 对客户端 JavaScript 不可用不是最佳实践吗?
我可以想到两种方法 - 设置自定义响应标头,或在 元素中以 JSON 形式发送数据。可以这么说,这个想法是将其发送到带外。
我想保持符合标准。
我认为正确的答案是设置无缓存响应标头,然后将返回的信息存储在 localStorage 中,但想问...
可以将多个 cookie 发送到浏览器,并且可以有选择地将它们标记为 HTTP Only,如下所示。此外,您的服务器可以发送数据/JSON 来响应您的浏览器 XHR/Fetch 请求。
结果: