当我尝试将jwt与laravel“5.5”一起使用时,我遇到了一个问题(此问题仅发生在5.5版本)
当我尝试在postMan上发帖时,我收到了此错误
未找到“Tymon \ JWTAuth \ Providers \ JWT \ NamshiAdapter”
帮助。
我把这个问题放在github上,这里是链接:
h ttps://github.com/jimmyHuey/jwt-test
答案 0 :(得分:7)
我发现了我的问题 在config / jwt.php文件中更改以下提供程序:
然后我收到了这个错误:
类型错误:传递给Tymon \ JWTAuth \ JWT :: fromUser()的参数1必须是Tymon \ JWTAuth \ Contracts \ JWTSubject的实例,App / User实例给出,在/ Applications / XAMPP / xamppfiles / htdocs中调用第54行/git/jwt-test/vendor/tymon/jwt-auth/src/JWTAuth.php
我通过实现JWTSubject来修复它并修改类:
namespace App;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Tymon\JWTAuth\Contracts\JWTSubject;
class User extends Authenticatable implements JWTSubject
{
public function getJWTIdentifier()
{
return $this->getKey();
}
public function getJWTCustomClaims()
{
return [];
}
}
答案 1 :(得分:0)
我只是通过查看#1316 issue来解决这个问题。
还是无法弄清楚我的项目有什么问题,但至少我找到了一种在laravel 5.5上使用jwt-auth的方法