版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wuchengzeng/article/details/88797030
使用jwt-auth登录认证的时候报错误:
1.Class Tymon\JWTAuth\Providers\JWT\Namshi does not exist php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\LaravelServiceProvider" --force
2.Argument 1 passed to Tymon\\JWTAuth\\JWT::fromUser() must be an instance of Tymon\\JWTAuth\\Contracts\\JWTSubject, instance of App\\User given, called in D:\\web\\learn-api\\vendor\\tymon\\jwt-auth\\src\\JWTAuth.php on line 54
解决方法:
找到User模型, 修改代码如下:
<?php
namespace App;
use Tymon\JWTAuth\Contracts\JWTSubject;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;
class User extends Authenticatable implements JWTSubject
{
use Notifiable;
//这里省略n多代码...
/**
* Get the identifier that will be stored in the subject claim of the JWT.
*
* @return mixed
*/
public function getJWTIdentifier()
{
return $this->getKey();
}
/**
* Return a key value array, containing any custom claims to be added to the JWT.
*
* @return array
*/
public function getJWTCustomClaims()
{
return [];
}
}
文章地址:https://blog.csdn.net/websites/article/details/88797030