Laravel中的jwt几种用法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_37035946/article/details/87879839

就拿登录来说:

//条件
$credentials = ['email' => $email, 'password' => $password];
$token = auth('api')->attempt($credentials);

等价于

JWTAuth::attempt($credentials)

等价于

Auth::guard('api')->attempt($credentials);

等价于( 如果默认了guard为api)

auth()->attempt($credentials);

一开始可能分不清Laravel自带的和JWT的有什么区别,其实:

auth()是辅助方法    而JWTAuth是一个Facade
JWTAuth::parseToken()->方法()  一般都可以换成 auth('api')->方法()
而auth('api') 又等价于  Auth::guard('api')->方法().

//其中api是auth.php文件里配置的guard参数,如果有默认guard值为api,则可以不写参数。

即使中间有细微差别,也无伤大雅。

auth()和Auth::guard(),是Laravel本身拥有的方法,只是需要指定guard的值。而JWTAuth是jwt的方法继承自Laravel的auth,所以才可以上面使用。

猜你喜欢

转载自blog.csdn.net/qq_37035946/article/details/87879839