簡體   English   中英

Laravel 8:或路由中間件

[英]Laravel 8: or middleware for route

我希望用戶能夠使用我創建的 2 個身份驗證登錄。 但是當我像下面這樣添加時,它會拋出一個錯誤,它讓我輸入我創建的兩個身份驗證 styles,而我只想輸入兩個身份驗證 styles 之一以成功登錄。

不知道有沒有人和我一樣的情況。 你能告訴我如何解決這個問題嗎?

代碼路線api.php:

Route::group(['middleware' => ['auth:sanctum', 'auth.basic.once']], function () {
   Route::get('/images', [ImageController::class, 'index']);
});

我嘗試了以下一些方法,但它仍然不起作用,其中包括中間件參數: https://laravel.com/docs/8.x/middleware#middleware-parameters

Route::group(['middleware' => ['auth:sanctum'|'auth.basic.once']], function () {
   Route::get('/images', [ImageController::class, 'index']);
});

或者

Route::group(['middleware' => ['auth:sanctum|auth.basic.once']], function () {
   Route::get('/images', [ImageController::class, 'index']);
});

您需要將身份驗證編寫為警衛,而不是中間件。 關於這個的文檔在這里

在此之后,您可以設置多個警衛:

Route::group(['middleware' => 'auth:sanctum,basic'], function () {
   Route::get('/images', [ImageController::class, 'index']);
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM