JWT HttpOnly Cookie,谁设置 Authorization 标头?

Ter*_*aya 7 oauth jwt reactjs spring-boot

所以我在前端 (ReactJS) 和后端 (Spring Boot) 之间进行 OAuth,

因为我设置了 cookie httpOnly,所以我的前端无法访问它。

但现在,由于每个请求都需要发送令牌来检查用户是否获得授权,我们该如何处理呢?

例如,如果我使用 axios 发送任何请求,如何在标头中获取授权令牌?

Mic*_*ski 8

好吧,你不能。如果 cookie 是 httponly,则无法将其内容添加到Authorization标头中。您要么需要直接在 JS 代码中存储令牌(例如,在本地存储或内存中 - 考虑到风险),要么需要在 API 和 SPA 之间添加代理。代理将从 cookie 中提取令牌并将其放置在Authorization标头中。

  • 是的,这是一个很好的做法。如果您控制 API 并且它们可以从 cookie 读取令牌,那么您就可以这样做。 (4认同)