Laravel Passport:auth:api返回未授权?

时间:2018-11-19 20:55:40

标签: api laravel-5.6 laravel-passport

我有以下api路由:

Route::get('/user/get', function(Request $request) {

    return Auth::user();

})->middleware('auth:api');

要测试以上内容的客户端应用程序:

   $access_token = 'd3f7333f7602c67e03cab2ab5171e893aeb731af0524d47864fb9d517de46f359a9dc6377195d46e';

    $ch = curl_init();
    $url = 'http://127.0.0.1:8000/api/user/get';
    $header = array(
        'Accept: application/json',
        'Authorization: Bearer '. $access_token
    );

    curl_setopt($ch,CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
    $result = curl_exec($ch);
    curl_close($ch);
    $response = json_decode($result);
    var_dump($result);

var_dump结果始终为:Unauthorized.

我已经从数据库表中复制了access_token,它既没有撤销也没有过期,并且表中只有一个access_token。

那么上述原因为何不起作用-任何想法我做错了什么?

1 个答案:

答案 0 :(得分:1)

好的,看来数据库表内的令牌已加密或某种原因,这可能就是为什么它不起作用的原因。当我使用http://127.0.0.1:8000/oauth/token返回的令牌时,它将起作用。