[英]Laravel Auth()->user()->id is null when I try to call API
抱歉,我還是 Laravel 的新手。我有一個 Laravel 應用程序,它有一個 API 路由,它應該請求已登錄人員的計時器,但它總是返回 null。
這是我的App\Http\Controllers\Api\TimerController.php
public function index(){
dd(Auth()->user()->id);
return Timer::where('userID', Auth()->user()->id)->first();
}
我的routes\api.php
Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
return $request->user();
});
Route::get('timer', 'App\Http\Controllers\Api\TimerController@index');
在此之后,我有一個 vue 前端應用程序來處理它接收到的數據。 但是我真的只想通過 API 提供登錄人員數據。 我是否遺漏了什么,阻止我檢查我是否登錄? 因為在其他控制器中我可以使用Auth()->user()->id
檢查一個人的登錄,但在這個控制器中不行。
當 Sanctum 無法驗證您的請求時,您將獲得授權用戶 ID null。 所以這是一個令牌問題。 在應該在 bootstrap.js 文件中的 axios 代碼下添加這一行。
axios.defaults.withCredentials = true;
如果您在應用程序外部進行 API 調用並收到錯誤,請在將進行調用的 function 中將此值設置為 false。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.