我是前端开发的新手,我试图了解前端认证方面的良好做法。
在我的情况下,我有自己的Vue JS单页应用程序使用的Laravel API。有一个针对 / login 网络路线的登录页面。该应用程序的其余部分正在使用api路由获取api资源。
我当然遵循了Laravel官方文档中的步骤:https://laravel.com/docs/5.8/passport#consuming-your-api-with-javascript
因此,正如预期的那样,CreateFreshApiToken中间件创建了 laravel-token cookie,并且身份验证工作正常。
但是我关心的是客户端。我阅读了很多有关如何在前端应用程序中处理身份验证的文章/示例。并且所有这些都将JWT令牌存储在本地存储中,然后使用Vuex将此JWT令牌映射为“ loggedIn”状态。 在我的场景中,JWT令牌在 laravel-token cookie中传递。这个cookie是httpOnly,所以我看不到它,甚至无法检查它的存在。
所以我的问题是:在这种情况下,使用laravel-token cookie和CreateFreshApiToken中间件,检查用户是否已登录并在页面重新加载后保持状态的最佳实践是什么?