- Cursos
- Tecnología
- Desarrollo Web
- API RESTful con Laravel: Guía Definitiva
API RESTful con Laravel: Guía Definitiva
Domina las características más difíciles y requeridas para una verdadera API RESTful - Paginación, Caché, HATEOAS y más. Implementa la capa de seguridad de la API RESTful del modo correcto usando OAuth2 por medio de Laravel Passport
Descripción del curso
La Guía absoluta para la creación de una verdadera API RESTful con Laravel.
¡Este curso hace uso de la versión más reciente de Laravel! Laravel 5.4
No, de verdad, no encontrarás un curso como este en ninguna otra parte y mucho menos en español.
No esperes más para ser experto en desarrollo de APIs RESTful con Laravel. Únete ahora al curso y nos vemos en clases.
En este curso aprende a desarrollar una verdadera y completa API RESTful profesional, usando la más reciente versión de Laravel para PHP.
Laravel es el framework de PHP más popular, con más de 20 millones de descargas a la fecha y muchísimos proyectos a nivel empresarial y personal en nivel mundial.
¿Por qué Laravel?
Porque es sencillamente un framework hecho por programadores y para programadores, expresivo, sencillo, intuitivo y potente. Millones de programadores de PHP lo usan y lo dominan cada vez más en todo el mundo; no te quedes atrás.
En cada versión nueva de Laravel se incluyen muchos cambios que hacen a este framework cada vez mejor, más simple, amigable con el programador y a la vez mucho más potente.
En la versión 5.4 de Laravel se han incluido enormes mejoras y todas ellas son usadas en su totalidad a lo largo del curso.
Durante el curso dominarás la estructura completa de Laravel, junto con las nuevas características incluidas en la versión más reciente.
Puedes darle una mirada a la lista completa de contenidos más abajo, para obtener más detalles.
Crearás una API verdaderamente RESTful desde cero y paso a paso, siguiendo la arquitectura REST y la construcción adecuada de URLs para identificar acciones y recursos usando los controladores para recursos de Laravel.
Exprime al máximo las características de tus herramientas de trabajo (Sublime Text 3, Git, Github, Laravel, Composer, PHP artisan) y sé más productivo para un desarrollo ágil.
Verás cómo desarrollar un proyecto local en tu sistema haciendo un uso óptimo de todas tus herramientas.
Aprende a usar PHP artisan para generar estructuras de código de forma automática y ahorrar tiempo y esfuerzo de desarrollo.
Construye una completa API RESTful con Laravel que responda a múltiples métodos de HTTP (GET, POST, PUT, PATCH y DELETE), también a poblar la base de datos y construir su estructura de manera automatizada.
¡Y no termina ahí! Tendrás acceso de por vida a las clases bonus que se agregarán constantemente al curso (dale una mirada a la lectura 186 para ver lo que viene pronto).
Al finalizar este curso serás capaz de desarrollar tu propia y verdadera API RESTful con Laravel y PHP de una manera efectiva y con las mejores prácticas, explotando al máximo las facilidades proporcionadas por este framework para la correcta y adecuada implementación de tus proyectos.
No esperes más para ser experto en desarrollo de APIs RESTful. Únete al curso y nos vemos en clases.
Contenido del curso
Introducción
05:11- Acerca del Instructor y el Curso01:56AVANCE
- Sacando Provecho del Curso y sus Contenidos03:15AVANCE
Descarga e Instala las Herramientas para Desarrollar la API RESTful con Laravel
21:46- Descargando e Instalando PHP con XAMPP03:23
- Descargando e Instalando Composer03:35
- Descargando e Instalando Virtual Box02:06
- Descargando e Instalando Vagrant02:11
- Descargando e Instalando Sublime Text 302:25
- Descargando e Instalando Github Shell03:24
- Descargando e Instalando Node y NPM02:42
- Descargando e Instalando Postman02:00
Creando y Estableciendo la Estructura Inicial de la API RESTful
21:18- Obteniendo Laravel Usando Composer04:02
- Agregando Homestead Como una Dependencia del Proyecto01:19
- Estableciendo la Configuración de Homestead04:07
- Agregando el Dominio de Desarrollo al Sistema03:26
- Usando Vagrant para Controlar la Máquina Virtual04:49
- Mantén el Proyecto Actualizado03:35
Configurando y Usando Sublime Text 3
16:51- Instalando el Package Control02:27
- Creando y Usando Proyectos02:05
- Instalando y Usando SublimeCodeIntel03:07
- Instalando y Usando SideBarEnhancement01:39
- Instalando y Usando SublimeLinter para PHP02:50
- Instalando y Usando PHPCompanion04:43
Comprendiendo el Caso de Estudio para la API RESTful
10:07- Comprendiendo los Recursos (Modelos) y sus Relaciones06:26
- Comprendiendo los “End-Points” Principales para la API RESTful03:41
Descubriendo y Configurando la Estructura del Proyecto
19:01- Descubriendo la Estructura de Laravel06:29
- Descubriendo PHP Artisan04:17
- Configurando las variables de entorno03:38
- Comprendiendo y Configurando las Nuevas Rutas04:37
Creando la Estructura Inicial de la API RESTful
17:19- Creando la Estructura Inicial para los Modelos y sus Migraciones05:52
- Creando la Estructura Inicial de Controladores03:54
- Creando las Rutas de Recurso para Cada Controlador07:33
Implementando los Modelos y sus Relaciones
20:13- Implementando las Propiedades de Category02:08
- Implementando las Propiedades para Product04:04
- Implementando las Propiedades para Transaction01:23
- Implementando las Propiedades de User06:38
- Implementando las Relaciones Entre los Modelos06:00
Generando la Estructura de la Base de Datos Usando Migraciones
17:04- Resolviendo un Problema Común con la Base de Datos03:20
- Implementando la Migración Para Users02:38
- Implementando la Migración Para Products03:27
- Implementando la Migración Para Transations01:24
- Implementando la Migración Para Categories01:33
- Creando la Migración Para la Tabla Pivote04:42
Creando Factories para Insertar Información en la Base de Datos
28:31- Creando el Factory para User04:52
- Creando el Factory para Category01:43
- Creando el Factory de Product04:33
- Creando el Factory de Transaction04:34
- Usando los Factories Desde el DatabaseSeeder07:32
- Cómo Ejecutar Las Migraciones y El Seeder05:17
Implementando las Operaciones para UserController
29:09- Implementando el Método Index de UserController04:19
- Implementando el Método Show de UserController03:48
- Implementando el Método Store de UserController08:57
- Implementando el Método Update de UserController10:03
- Implementando el Método Destroy de UserController02:02
Implementando las Operaciones para Buyer
05:36- Implementando el Método Index en BuyerController02:49
- Implementando el Método Show en BuyerController02:47
Implementando las Operaciones para Seller
03:10- Implementando el Método Index en SellerController01:53
- Implementando el Método Show en SellerController01:17
Mejorando las Operaciones Actuales de la API RESTful
17:39- Definiendo Mutadores y Accesores en los Modelos05:51
- Generalizando las Respuestas de la API06:12
- Haciendo Uso de los Métodos Generalizados03:48
- Usando los Métodos Generalizados para Respuestas de Error01:48
Manejando Errores y Excepciones
27:46- Retornando los Errores de Validación en Formato JSON05:26
- Retornando el Error de “Modelo No Encontrado” como JSON03:24
- Controlando Excepciones de Autenticación02:29
- Controlando Excepciones de Autorización01:45
- Controlando Excepciones de No Encontrado (HTTP)01:51
- Controlando Excepciones de Método No Permitido02:13
- Controlando Diferentes Excepciones de HTTP02:00
- Manejando la Eliminación de Recursos Relacionados04:24
- Manejando Excepciones Inesperadas04:14
Inyección Implícita de Modelos en Rutas y Métodos
12:53- Usando Inyección de Modelos en Algunos Métodos04:55
- Resolviendo la Inyección de Buyer Usando “Global Scopes”05:48
- Resolviendo la Inyección de Seller Usando “Global Scopes”02:10
Implementando “Soft Deleting” en Todos los Modelos
05:43- Modificando las Migraciones para Usar “Soft Deleting·02:34
- Preparando Todos los Modelos para Usar “Soft Deleting”03:09
Implementando las Operaciones para Category
13:07- Implementando el Método Index de CategoryController02:58
- Implementando el Método Show de CategoryController01:11
- Implementando el Método Store de CategoryController02:58
- Implementando el Método Update de CategoryController04:14
- Implementando el Método Destroy de CategoryController01:46
Implementando las Operaciones para Product
03:27- Implementando el Método Index para ProductController02:19
- Implementando el Método Show para ProductController01:08
Implementando las Operaciones Complejas con Transaction
07:09- Implementando el Método Index de TransactionCategoryController03:57
- Implementando el Método Index de TransactionSellerController03:12
Implementando las Operaciones Complejas con Buyer
21:03- Implementando el Método Index de BuyerTransactionController03:12
- Implementando el Método Index de BuyerProductController06:56
- Implementando el Método Index de BuyerSellerController06:22
- Implementando el Método Index de BuyerCategoryController04:33
Implementando las Operaciones Complejas con Category
17:52- Implementando el Método Index para CategoryProductController02:27
- Implementando el Método Index para CategorySellerController03:30
- Implementando el Método Index para CategoryTransactionController04:12
- Implementando el Método Index para CategoryBuyerController05:32
- Removiendo la Tabla Pivote de los Resultados02:11
Implementando las Operaciones Complejas con Seller
28:39- Implementando el Método Index para SellerTransactionController02:54
- Implementando el Método Index para SellerCategoryController02:13
- Implementando el Método Index para SellerBuyerController03:08
- Implementando el Método Index para SellerProductController03:09
- Implementando el Método Store para SellerProductController06:21
- Implementando el Método Update para SellerProductController07:22
- Implementando el Método Destroy para SellerProductController03:32
Implementando las Operaciones Complejas para Product
35:14- [Reto] Implementando la Operación Index de ProductTransaction04:02
- [Reto] Implementando la Operación Index de ProductBuyer04:23
- [Reto] Implementando la Operación Index de ProductCategory04:11
- Implementando la Operación Update de ProductCategory06:12
- Implementando la Operación Destroy de ProductCategory03:24
- Implementando la Operación Store de ProductBuyerTransaction09:45
- Manejando la Disponibilidad de Productos Usando Eventos03:17
Agregando una Imagen a los Productos
15:08- Preparando la API para la Subida de Imágenes04:04
- Guardando la Imagen al Crear un Producto03:33
- Removiendo la Imagen al Eliminar un Producto03:13
- Actualizando la Imagen al Editar un Producto04:18
Enviando Correos para la Verificación de Cuentas de Usuario
47:01- Preparando el Proyecto para el Envío de Correos06:51
- Implementando el Sistema de Verificación06:09
- Creando el Mailable para Usuarios Creados01:32
- Implementando el Mailable para Usuarios Creados04:00
- Enviar Correo de Verificiación Usando Eventos04:38
- Resolviendo un Problema con los Factories03:29
- Creando el Mailable para Validar un Nuevo Correo Electrónico01:23
- Implementando el Mailable de UserMailChanged01:53
- Enviar Verificación para Email Modificado Usando Eventos03:26
- Reenviando el Correo de Verificación04:09
- Manejando Acciones Propensas a Errores03:45
- Usando Mailables y Markdown05:46
Los Middleware y el Limitador de Peticiones
19:55- Acerca de los Middleware y Cómo Funcionan04:03
- Creando un Middleware Personalizado06:23
- Acerca del Limitador de Peticiones04:36
- Personalizando la Respuesta para “Límite Excedido”04:53
Transformando Respuestas por Seguridad y Compatibilidad
33:22- Acerca de las Transformaciones y Por Qué Usarlas04:33
- Preparando el Proyecto para la Transformación de Datos02:55
- Creando la Transformación para User05:11
- Creando la Transformación para Seller y Buyer02:16
- Creando la Transformación para Category01:45
- Creando la Transformación para Transaction01:37
- Creando la Transformación para Product02:52
- Relacionando los Modelos con su Transformación02:37
- Retornando las Nuevas Respuestas Transformadas09:36
Ordenando y Filtrando Resultados Usando Parámetros de URL
17:32- Ordenando los Resultados Usando Cualquier Atributo04:37
- El Problema con las Respuestas Ordenadas03:18
- Mejorando las Transformaciones para Resolver el Problema03:03
- Resolviendo el Problema Usando las Transformaciones02:16
- Filtrando Respuestas Según Múltiples Atributos04:18
Paginación de Resultados
12:55- Acerca de la Paginación03:10
- Paginando Colecciones06:41
- Permitiendo Tamaño de Página Personalizado03:04
Caché de Resultados
09:39- Implementando el Sistema de Caché04:22
- El Sistema de Caché y los Parámetros de URL05:17
Implementando HATEOAS Hypermedia Controls
17:01- ¿Qué es HATEOAS y Por Qué Usarlo?03:15
- Implementando HATEOAS para Instancias de Category05:05
- Implementando HATEOAS para Instancias de Product03:54
- Implementando HATEOAS para Instancias de Transaction02:59
- Implementando HATEOAS para Instancias de User01:48
Las Transformaciones y las Validaciones
20:12- Comprendiendo Dos Problemas con Transformaciones y Validaciones02:45
- Creando y Usando un Middleware para Resolver el Problema05:42
- Implementando la Solución al Primer Problema Usando el Middleware03:30
- Mejorando las Transformaciones para Resolver el Segundo Problema03:11
- Mejorando el Middleware para Resolver el Segundo Problema05:04
Preparando la API para Autenticación de Usuarios Usando Sesiones
22:00- ¿Por Qué es Requerido en la API?02:02
- Creando la Estructura Adicional para Autenticación03:05
- Afinando Algunas Estructuras para Evitar Inconsistencias03:44
- Acerca de CSRF y Manejando Excepciones de CSRF05:21
- Retornando HTML y Redirecciones Cuando Sea Requerido07:48
Implementando la Capa Inicial de Seguridad con Laravel Passport (OAuth2)
01:18:37- Acerca de OAuth2 y la Seguridad en las APIs03:49
- ¿Qué es Laravel Passport?02:36
- Preparando el Proyecto para Usar Laravel Passport01:54
- Usando las Migraciones de Laravel Passport02:40
- Instalando Passport de Forma Definitiva en la API02:56
- Autenticando Usuarios por Medio de Tokens de la API01:51
- Registrando las Rutas Requeridas03:14
- Configurando el Sistema de Autenticación01:47
- Definiendo el Tiempo de Expiración de los Tokens03:33
- Usando client_credentials para Proteger Algunas Rutas05:10
- Cómo Obtener y Usar un Token Usando Client Credentials03:27
- Protegiendo las Demás Rutas06:28
- Usando el Grant Type Password03:45
- Preparando la API para Usar los Componentes de Passport05:37
- Usando el Componente para Gestionar Tokens Personales05:51
- Acerca de los Tokens Personales y Cómo Usarlos02:29
- Usando los Componentes para Gestionar Clientes de la API05:12
- Obteniendo un Token con un Código de Autorización07:30
- Usando el Grant Type Implícito03:54
- Usando los Refresh Tokens04:54
Restringiendo Clientes de OAuth2 Mediante Scopes
34:37- ¿Qué son los Scopes de OAuth2?02:35
- Registro de Algunos Scopes Requeridos para la API06:27
- Registro de Middleware para Comprobar Scopes03:15
- Restringiendo las Acciones que Usan el Scope "purchase-product"04:38
- Restringiendo las Acciones que Usan el Scope "manage-products"06:17
- Restringiendo las Acciones que Usan el Scope "manage-account"03:45
- Restringiendo las Acciones que Usan el Scope "read-general"07:40
Conclusión
01:41- Gracias por Llegar Hasta Aquí01:41
Valoraciones
- 5 ESTRELLAS67%
- 4 ESTRELLAS0%
- 3 ESTRELLAS0%
- 2 ESTRELLAS0%
- 1 ESTRELLAS33%
- Cristopher JavierHernández GonzálezIncluir valoración media (en números)
Excelente! Me dejo sorprendido muchas de las cosas que se pueden hacer con el framework, recomendado para los seguidores de Laravel!
- Elvis PaúlArce ChavarriaIncluir valoración media (en números)
Muy bueno, bien explicado y sobre todo excelente soporte a las consultas e inquietudes.
- JavierSorianoIncluir valoración media (en números)
¿Por qué pagar por un curso cuando puedes tenerlos todos?
Prueba la Suscripción ahoraO quiero saber más
Cursos que quizás te interesen
- 10 €11 h5
- 19 €1 h0