Instalar Laravel Passport
Comprar curso

20. Instalar Laravel Passport


7 comentarios

Inicia sesión para comentar

Comentarios:

  • Fernando Noe Marquez Garcia

    Fernando Noe Marquez Garcia hace 7 meses

    Por si les sale error al instalar Laravel Passport habilitar en el php.ini la extension. 

    extension=sodium

  • Yoan Estrada Blanco

    Yoan Estrada Blanco hace 9 meses

    Victor hermano tengo un problema el código del constructor de $this→middleware('auth:api'); no me protege el controlador pasa por el middleware pero no hace nada, este es mi repositorio yoan0102/api.coderfree: projecto parendiendo hacer una api profesional con laravel y ecosistema (github.com)

    • Alonso Castillo hace 4 meses

      Hola, yo lo estoy usando en Laravel 11, 

      <?php
      
      namespace App\Http\Controllers\Api;
      
      use App\Http\Controllers\Controller;
      use App\Http\Resources\PostResource;
      use App\Models\Post;
      use Illuminate\Http\Request;
      use Illuminate\Routing\Controllers\HasMiddleware;
      use Illuminate\Routing\Controllers\Middleware;
       
      class PostController extends Controller implements HasMiddleware
      {   
          public static function middleware(): array
          {
              return [
                  new Middleware(middleware: 'auth:api', except: ['index', 'show']),
              ];
          }
          ...
      }

      y para q te salga lo del mensaje 

      "message": "Unauthenticated."

      tienes q agregar como dice @Cfig 

      'api' => [
          'driver' => 'token',
          'provider' => 'users',
      ],

      en el archivo config/auth.php , su comentario esta mas abajo

    • Yoan Estrada Blanco hace 4 meses

      hermano gracias 

  • Mkevyn

    Mkevyn hace 1 año

    En laravelv.10 tuve problemas para instalar el laravel/passport así que tuve que utilizar una versión anterior a la actual: composer require laravel/passport:11.8.4 --with-all-dependencies por si quizá a alguien le pase lo mismo

    • Coditeac Oficial hace 1 año

      Si en Laravel ^10.8 el comando para instalar correctamente sin error es (sin poner →):

      -> composer require laravel/passport -W

    • Bernal Fuentes hace 1 año

      Gracias

  • Cfig

    Cfig hace 1 año

    En el minuto 3:30, en caso de aparecer el siguiente mensaje de Auth guard: ("message": "Auth guard [api] is not defined.",  "exception": “InvalidArgumentException”), es por que hace falta el guard ‘api’ en el archivo config/auth.php, en el item ‘guards’. Según entiendo, el driver que trae nativo Laravel es token, por lo que en este punto, para que no salga el error sin tener instalado Passport aun, sería ajustar dicho guard agregando el siguiente valor:

     

    'api' => [
        'driver' => 'token',
        'provider' => 'users',
    ],

     

    Entonces el guard del archivo config/auth.php sería el siguiente (para que aparezca "message": "Unauthenticated." del minuto 3:30):

     

    'guards' => [
            'web' => [
                'driver' => 'session',
                'provider' => 'users',
            ],
            'api' => [
                'driver' => 'token',
                'provider' => 'users',
            ],
        ],

     

    Mas adelante (minuto 9:40) el guard del archivo config/auth.php es modificado nuevamente, en este caso para hacer uso de Passport.

    • Victor Arana Flores hace 1 año

      Hola, gracias por el aporte

    • Javier Sayanes hace 1 año

      Muy bueno!!!

  • Juan Jose Soto

    Juan Jose Soto hace 1 año

    Min: -10:32 

     

    En el metodo constructor al usar:

         

            $this->middleware('auth:api')->except('index','show');

     

    Da el siguiente error:

     

            "message": "Auth guard [api] is not defined.",

            "exception": “InvalidArgumentException”

     

    Mi solucion es dejarlo sin asi:

     

            $this->middleware('auth')->except('index','show');

     

    Si estoy equivocado Porfavor acepto la corrección.

    • Victor Arana Flores hace 1 año

      Hola Juan. Cuando pones auth:api lo que le estás indicando es que quieres trabajar con el guard api.

      Si lo pones solo auth, lo que hará es tomar el guard por defecto.

      Asegurate de haber configurado correctamente el guar api para que no tengas incoveniente.

    • Juan Jose Soto hace 1 año

      Gracias Victor, ya hice la correccion, esta solucionado… Gracias.. 

  • Jose Ramon Paz Piquero

    Jose Ramon Paz Piquero hace 2 años

    Hola Victor.

    Estoy haciendo el curso ahora y parece ser que en la versión 11 de passport ya no existe la función route() y me está dando fallo. ¿Cómo puedo hacer?

    Muchas gracias.

    • Victor Arana Flores hace 2 años

      Hola Jose. Actualmente ya no es necesario registrar las rutas ya que estas se descubren automaticamente al instalar el paquete.

      Si ejecutas el comando php artisan r:l podrás visualizar que todas esas rutas estan creadas. Te podrás dar cuenta porque todas comienzan con oauth/..

  • Esteban Benitez

    Esteban Benitez hace 2 años

    Hola, me ha salido un mensaje al usar el middleware auth:api, tan pronto envío la petición aparece Auth guard [api] is not defined.

    • Victor Arana Flores hace 2 años

      Hola Estimado, publica tu codigo para ver que estás haciendo mal.

    • Esteban Benitez hace 2 años

      Logré solucionarlo poniendo

       

      'api' => [

                  'driver' => 'passport',

                  'provider' => 'users',

                  'hash' => false,

              ],

       

      en los guards del authServiceProvider.php

    • Emmanuel Ovares hace 2 años

      Por si acaso, creo que el archivo es config/auth.php
      Y en Laravel 8: 

      'api' => [

          'driver' => 'token',

          'provider' => 'users',

      ],