首頁  >  問答  >  主體

使用Laravel創建一個帶有授權令牌的GET API

我有一個註冊 API,它將用戶詳細資訊註冊到資料庫,它還使用生成令牌 laravel Passport 並將令牌儲存到資料庫

現在我正在嘗試建立一個get api,它將使用生成的令牌從資料庫中獲取所有資料

我嘗試過的

api.php

路由::get('/get_user', [userDEtails::class, 'get_user']);

userDEtails.php 控制器

public function get_user(Reqest $req)
{

// what code must i add here
    
}

在郵差中,我想在標頭中添加令牌作為授權和 api 來工作

我正在使用 Laravel 框架 9.41.0

P粉239164234P粉239164234322 天前456

全部回覆(1)我來回復

  • P粉475126941

    P粉4751269412023-12-26 00:53:25

    既然您已經說過您為此使用 Laravel Passport,請嘗試執行 這個來獲取用戶(並檢查範圍)

    public function get_user(Request $request)
    {
        $user = $request->user();
    }

    理想情況下這應該會有效。您還需要確保您的路線使用 'auth:api' 中間件 像這樣的路線 -

    Route::get('/get_user', [userDEtails::class, 'get_user'])->middleware('auth:api');

    如果由於某種原因您無法為此路由使用“auth:api”中間件,並且需要堅持使用“web”或其他內容,則可以使用 -

    $user = auth()->guard('api')->user()

    $user = $request->user('api')

    而不是取得使用者物件。

    回覆
    0
  • 取消回覆