laravel - Tymon\JWTAuth::toUser 错误:需要 token

标签 laravel authentication laravel-5 jwt

我有一个 Larvel API,它使用 Tymon\JWTAuth 来验证用户身份。

工作正常。

由于某些原因,我在 web.php 中还有一个不 protected 路由:

Route::get('myroute', 'MyController@mymethod');

MyController@mymethod的代码如下:

$user = JWTAuth::toUser($request->input('token'));

// I tried also this:
// JWTAuth::setToken($request->input('token'));
// $user = JWTAuth::authenticate();

我在浏览器中使用以下网址调用路由:/myroute?token=eyJ0eXAiOiJKV1QiLCJhbGci....

问题是我在 JWT.php 中有一个异常:

Tymon \ JWTAuth \ Exceptions \ JWTException A token is required

JWT.php

protected function requireToken()
{
    if (! $this->token) {
        throw new JWTException('A token is required');
    }
}

如何解码作为 URL 参数传递而不是在请求 header 中传递的 token ?

最佳答案

如果您使用的是jwt-auth dev,旧版本中的toUser方法会像上面一样抛出错误,试试这个:

// Get the currently authenticated user
$user = auth()->user();

如果用户未经过身份验证,则返回 null。

关于laravel - Tymon\JWTAuth::toUser 错误:需要 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50843841/

相关文章:

python - django tastypie 自定义登录

php - 如何使用输入重定向回表单 - Laravel 5

php - 提高查询速度 Ionic/Laravel 发布请求

php - Laravel 附加枢轴数据没有错误

php - 在 eloquent 中的连接表字段上应用 order by

authentication - OpenID Connect 适用于物联网吗?

django - 401 未经授权 ("detail":"Authentication credentials were not provided.")

php - 在 Bootstrap 模态 (Laravel) 中对按钮执行特定操作

php - Laravel 5.1 Blade(或只是简单的回显)错误地显示类

laravel-5 - Lumen 5.1 SQS 队列配置