2017-02-20 89 views
0

我正在使用Laravel 5.4(護照)開發REST API。獲取密碼授權令牌沒有Laravel護照的http請求

我希望用戶在註冊時獲取訪問令牌而不發出另一個http請求。 我已經徹底的Laravel文檔。但沒有直接的方式來獲取訪問令牌。是這樣的: -

$token = $user->getOathToken($user_id); 

護照文檔password grant token

在文檔它們提供了這樣的事情:

$http = new GuzzleHttp\Client; 

    $response = $http->post('http://your-app.com/oauth/token', [ 
     'form_params' => [ 
      'grant_type' => 'refresh_token', 
      'refresh_token' => 'the-refresh-token', 
      'client_id' => 'client-id', 
      'client_secret' => 'client-secret', 
      'scope' => '', 
     ], 
    ]); 

return json_decode((string) $response->getBody(), true); 

我不想再拍http請求。有什麼辦法可以避免它?

回答

1

沒有一種方法可以做你想做的事情。你可以看看

\Laravel\Passport\Http\Controllers\[email protected] 

這是處理/oauth/token路由控制器方法。並且看看將它作爲POST請求傳遞給它所需的參數。

+1

提供這種類型的功能並不明顯,或者我缺少關於護照工作流程的信息? –

+1

並非如此,護照旨在允許用戶爲第三方應用程序或第一方應用程序(使用密碼授權)登錄時生成令牌。您可以在身份驗證承載頭中使用CSRF令牌,用於「本地」請求,這是本地服務的vuejs前端進行身份驗證的方式。 – Joe