登录流授权后,我应该如何在浏览器中存储API的访问令牌



在创建web应用程序时,我将使web客户端和后端API完全分离。我的Laravel API后端将存在于api.myawesomeapp.com上,我的NextJS前端将是myawesomeapp.com上的主要消费者。laravel Oauth流使用passport,它从API客户端(如Postman(工作,但我很好奇在浏览器中存储授权令牌以发送授权请求的最佳方式。

我读到将其保存在本地存储中不是100%安全的,所以我正在寻找替代方案。cookie似乎可以工作,但我认为我不能将其标记为httpOnly,因为它需要通过JS发送。此外,我很好奇我应该如何加密它以将其存储在浏览器中,我对自己的滚动持怀疑态度,很好奇如果这实际上是正确的方法,我应该如何处理。

将其保存在内存中(在变量中(,并将其附加到每个请求中。

如果您的accessToken过期或用户刷新了浏览器(因此刷新了内存中的accessToken(,请向api/refresh请求获取新的accessToken

签出此流程,调用Axios Interceptor响应令牌刷新API,但无论在refreshToken API&lator所有API

最新更新