【问题标题】:Undefined type 'Tymon\JwTAuth\Contracts\JWTSubject'未定义类型 'Tymon\JwTAuth\Contracts\JWTSubject'
【发布时间】:2022-04-04 19:33:03
【问题描述】:

我安装了这个包:

composer require tymon/jwt-auth  "^1.0"

然后跑:

php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\LaravelServiceProvider"

然后:

 php artisan jwt:secret

我也在 app.php 配置文件中添加了这个:

    Tymon\JWTAuth\Providers\LaravelServiceProvider::class,

命令运行没有错误。但是,按照文档,我正在尝试在 User 模型上实现 JWTSubject 接口。然而像这样:

use Tymon\JwTAuth\Contracts\JWTSubject;

class User extends Authenticatable implements JWTSubject
{

JWTSubject 带有红色下划线,上面写着:

Undefined type 'Tymon\JwTAuth\Contracts\JWTSubject'.

您知道可能是什么问题吗?谢谢

【问题讨论】:

  • 考虑到过去一两年未解决问题的数量和缺乏提交的情况,使用另一个包可能是个好主意。 github.com/tymondesigns/jwt-auth
  • 谢谢,但它似乎也非常用于让 jwt 工作。你有其他推荐吗?

标签: php laravel jwt


【解决方案1】:

它使用这些命令,忽略了平台要求:

composer require tymon/jwt-auth --ignore-platform-reqs

 php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\LaravelServiceProvider"

php artisan jwt:secret

【讨论】:

    【解决方案2】:

    你的类没有加载到 autoload_classmap.php 你应该这样做composer dump-autoload

    【讨论】:

      【解决方案3】:

      我打开了“vendor\tymon\jwt-auth\src\Contracts\JWTSubject.php”,这个错误突然得到了修复。

      我不知道为什么,但它有效

      【讨论】:

      • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
      猜你喜欢
      • 2021-06-01
      • 2019-09-03
      • 2020-06-15
      • 2016-05-30
      • 2016-02-23
      • 2018-12-01
      • 1970-01-01
      • 2017-03-31
      • 1970-01-01
      相关资源
      最近更新 更多