Laravel 5/AngularJS自定义身份验证最佳实践



我正在使用Laravel 5.3作为后端,而AngularJS作为前端的应用程序。对于身份验证,需要将用户的信息与外部API匹配。为此,我一直在使用Laravel内置身份验证的自定义版本,即

  1. 用户输入信息
  2. Angularjs前端发送到Laravel后端
  3. Laravel使用auth ::登录对外部API
  4. 进行检查
  5. 要么告诉用户他们的凭据是错误的,要么将其移至主页

我的问题是,从那时起,继续使用Laravel的内置验证中间件功能以查看用户在应用程序中移动时是否已身份验证是不好的做法吗?

我正在阅读的所有内容似乎都在讨论使用基于令牌的身份验证(主要是JWT),尽管我的方法肯定有效,但我是Angularjs的新手,并且想确保我所做的工作遵循最佳实践。

谢谢!

就最佳实践而言,有很多不同的方法可以解决。您可以使用Laravel内置的身份验证,但必须确保会话ID随着每个请求或auth的发送::用户将是null。

当涉及API时,您通常不想拥有会话数据,人们使用诸如JWT或OAUTH之类的令牌的主要原因是因为它们无状态(大部分)。如果您使用JWT令牌,则可以添加一个额外的中间软件,其中包括这样的东西:

if (JWTAuth::getToken()) {
        JWTAUth::parseToken()->authenticate();
    }

当您做类似的事情时,Laravel的身份验证方法将按预期工作。这将与包装随附的JWT.auth中间件结合使用。希望能使事情有些清晰:)

最新更新