在没有数据库的laravel中创建用户类

时间:2016-01-05 08:34:21

标签: php oop laravel laravel-5

我正在使用Laravel 5.1从api中检索数据并将其显示在网站上。

每当我在标题中发送带有JWT令牌的任何请求时,api都会返回auth用户。

当用户登录一次后,我会在每次请求中发送令牌。

我想要一种可以在每个视图中查看auth用户及其详细信息的方法。

1)如何设置对User类的响应,以便稍后可以在视图中将其用作Facade?

2)如何检索身份验证用户?

3)如何检查是否有auth用户?

答案在Json

  "feed": {...}
  "auth": {
    "id": 1,
    "name": "Hetu Nandu",
    "title": "Student",
    "kp": 43,

  }

1 个答案:

答案 0 :(得分:1)

Auth :: user()的调用会返回当前已通过身份验证的用户。由于您希望在远程用户存储中重用现有的身份验证功能,因此您需要做一些事情。

首先,您需要一个将用于身份验证的User类。它需要实现 Authenticatable 接口。您需要此接口的唯一方法是 getAuthIdentifier() - 它应返回给定用户的唯一标识符。此标识符保存在会话中,稍后用于为后续请求重新加载已使用的数据。您可以返回 JWT令牌

接下来,您需要在Laravel中对用户进行身份验证。你可以用

来做
Auth::login($user)

这将在会话中存储用户的标识符。

最后,您需要一种方法来为后续请求加载用户数据。您需要实现自定义用户提供程序 - 它非常简单。您可以在文档中找到一个示例:https://laravel.com/docs/5.1/authentication#adding-custom-authentication-drivers