es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Laravel 8: middleware para ruta

Quiero que el usuario pueda iniciar sesión con las dos autenticaciones que creé. Pero cuando agrego lo siguiente, devuelve un error y me obliga a ingresar ambos estilos de autenticación que creé, mientras que solo quiero ingresar uno de los dos estilos de autenticación para iniciar sesión con éxito.

No sé si alguien ha tenido la misma situación que yo. ¿Y puedes decirme cómo resolver este problema?

Código de ruta api.php:

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

He intentado algunas formas como las siguientes, pero todavía no funciona y eso incluye los parámetros de Middleware: https://laravel.com/docs/8.x/middleware#middleware-parameters

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

O

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

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Parece que estás intentando utilizar dos métodos de autenticación (auth:sanctum y auth.basic.once) para la misma ruta. Lamentablemente, esto no es posible.

    Puedes utilizar uno de los métodos de autenticación, o puedes crear una ruta separada para cada método de autenticación. Por ejemplo:

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

Comments are closed.