Construyendo Web Apis Restful Con Asp.Net Core 9

Posted By: ELK1nG

Construyendo Web Apis Restful Con Asp.Net Core 9
Last updated 2/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: Spanish | Size: 15.67 GB | Duration: 27h 12m

¡Aprende a construir y publicar cualquier Web API que te propongas!

What you'll learn

Construir Web APIs con .NET Core

Publicar Web APIs en Azure

Utilizar Azure DevOps para configurar integración y entrega continua (CI/CD)

Desarrollar Web APIs RESTful

Requirements

Conocimientos básicos de C# (saber qué es una clase, el condicional IF, cómo invocar una función)

Description

Aprende a desarrollar Web APIs con ASP.NET Core desde cero con este increíble curso. Vamos a ver todo el ciclo de vida del desarrollo de un Web API, desde crear la solución, desarrollar los endpoints, trabajar la manipulación de recursos, hasta su puesta en producción en Azure. Aprende también a utilizar GitHub Actions para configurar un pipeline de integración continua y entrega continua, para poder publicar tus proyectos desde su código fuente en Github.A lo largo de este curso iremos desarrollando un proyecto completo y profesional, donde trabajamos: Subida de archivosSistema de usuario con rolesValidacionesBase de datos de SQL ServerRelaciones entre tablasEntity Framework CorePruebas unitarias y de integraciónManejo de errores en producciónY más!Los Web APIs son fundamentales en el desarrollo web moderno. Ya que nos permiten centralizar y proteger la lógica de nuestras soluciones. Además de que es en un Web API que típicamente tenemos acceso a una base de datos central con la cual todos tus usuarios se pueden comunicar. Ya sea que construyas una red social, una aplicación de deliveries, o incluso una app de oficina, un Web API te permite trabajar el back-end de aplicaciones móviles (Android, iOS, MAUI, etc.), web (React, Angular, Blazor, Vue, etc.), desktop, entre otros.

Overview

Section 1: Fundamentos de Web API y HTTP

Lecture 1 Introducción

Lecture 2 ¿Qué es un API?

Lecture 3 ¿Qué es REST? - Principios de REST

Lecture 4 Métodos HTTP

Lecture 5 Anatomía de una petición HTTP

Lecture 6 Códigos de Estatus HTTP

Lecture 7 Resumen

Lecture 8 Repositorio de Github

Section 2: Configurando el Ambiente

Lecture 9 Introducción

Lecture 10 ¿Qué es .NET?

Lecture 11 ¿Qué es C#?

Lecture 12 Introducción a ASP.NET Core

Lecture 13 Controladores y Minimal APIs

Lecture 14 Instalando .NET

Lecture 15 Instalando el EF Core CLI

Lecture 16 Instalando Visual Studio

Lecture 17 Instalando Visual Studio Code

Lecture 18 Instalando SQL Server

Lecture 19 Instalando Postman

Lecture 20 Creando el Web API con VS

Lecture 21 Creando el Web API con VS Code

Lecture 22 Explorando el Web API - Soluciones y Proyectos

Lecture 23 ¿Qué es Nullable?

Lecture 24 Usings Implícitos

Lecture 25 Archivo LaunchSettings

Lecture 26 Clase Program

Lecture 27 Archivos AppSettings

Lecture 28 Resumen

Section 3: Nuestro Primer Web API

Lecture 29 Introducción

Lecture 30 Iniciando el Desarrollo del Web API

Lecture 31 Instalando Entity Framework Core

Lecture 32 Leyendo y Creando Recursos desde el Controlador

Lecture 33 Obteniendo un Registro Por su Id

Lecture 34 Actualizando Recursos

Lecture 35 Borrando Recursos

Lecture 36 Creando una Segunda Tabla

Lecture 37 CRUD de Libros

Lecture 38 Consultando la Data Relacionada

Lecture 39 Resumen

Section 4: Fundamentos de ASP.NET Core y Web API

Lecture 40 Introducción al Módulo 4

Lecture 41 Controladores y Acciones

Lecture 42 Explorando Nuestro Controlador

Lecture 43 Reglas de Ruteo

Lecture 44 Restricciones de Ruta

Lecture 45 Tipos de Datos de Retorno

Lecture 46 Programación Asíncrona

Lecture 47 Introducción al Model Binding

Lecture 48 Validaciones por Defecto

Lecture 49 Otras Validaciones Por Defecto

Lecture 50 Validaciones Personalizadas por Atributo

Lecture 51 Validaciones Personalizadas por Modelo

Lecture 52 Validando desde el Controlador - Validando Contra la BD

Lecture 53 Inyección de Dependencias y Acoplamiento

Lecture 54 Utilizando el Principio de Inversión de Dependencias

Lecture 55 Servicios en ASP.NET Core

Lecture 56 Ejemplo de Tiempo de Vida de los Servicios

Lecture 57 Usando Un Singleton Para Nuestro Repositorio en Memoria

Lecture 58 ¿Y qué hacemos con Entity Framework Core?

Lecture 59 Loggers

Lecture 60 Introducción al Middleware

Lecture 61 Ejemplos de Middleware

Lecture 62 Colocando los Middlewares en Su Propia Clase

Lecture 63 Resumen

Section 5: Manipulando Recursos

Lecture 64 Introducción al Módulo 5

Lecture 65 Limpiando el Proyecto

Lecture 66 Repaso de Cómo Configurar EF Core

Lecture 67 Repaso de Cómo Insertar Registros en la Base de Datos

Lecture 68 Creando Recursos con Post

Lecture 69 Nombres, Apellidos y Datos Sensibles

Lecture 70 DTOs y Automapper

Lecture 71 DTOs de Libros

Lecture 72 DTOs Que Suman

Lecture 73 Leyendo Registros con EF Core

Lecture 74 Actualizando Recursos

Lecture 75 HTTP Patch y JSON Patch

Lecture 76 Actualizando Solo Algunos Campos con HTTP PATCH

Lecture 77 Borrando Recursos

Lecture 78 Relación Uno a Muchos

Lecture 79 Controlador de un Recurso Dependiente

Lecture 80 Relación Muchos a Muchos

Lecture 81 Insertando Datos en una Relación Muchos a Muchos

Lecture 82 Actualizando Registros de Relaciones Muchos a Muchos

Lecture 83 Obteniendo Data Relacionada en Una Relación Muchos a Muchos

Lecture 84 Creando una Recurso con sus Recursos Relacionados

Lecture 85 Creando una Colección de Recursos

Lecture 86 Obteniendo una Colección de Recursos

Lecture 87 Resumen

Section 6: Configuraciones

Lecture 88 Introducción

Lecture 89 Introducción a las Configuraciones

Lecture 90 Ejemplo de IConfiguration

Lecture 91 Secciones - GetChildren

Lecture 92 Usando el AppSettings

Lecture 93 Variables de Ambiente

Lecture 94 Orden de Declaración de los Proveedores de Configuración

Lecture 95 User Secrets

Lecture 96 Línea de Comandos

Lecture 97 Diccionario en Memoria como Proveedor

Lecture 98 Patrón en Opciones

Lecture 99 Utilizando IOptionsSnapshot

Lecture 100 Utilizando IOptionsMonitor

Lecture 101 Consideraciones de Seguridad

Lecture 102 Resumen

Section 7: Seguridad

Lecture 103 Introducción al Módulo 7

Lecture 104 Limpiando la App

Lecture 105 Autenticación y Autorización

Lecture 106 Configurando Identity

Lecture 107 Authorize y AllowAnonymous

Lecture 108 Registrando Usuarios

Lecture 109 Login de Usuarios

Lecture 110 Enviando el JWT

Lecture 111 Relación Entre Usuarios y Comentarios

Lecture 112 Obteniendo al Usuario Logueado

Lecture 113 Utilizando el Servicio de Usuarios

Lecture 114 Renovando el Token

Lecture 115 Configurando la Autorización Basada en Claims

Lecture 116 Agregando una Columna a la Tabla de Usuarios

Lecture 117 Obteniendo el Listado de Usuarios

Lecture 118 Deslogueo

Lecture 119 Introducción a CORS

Lecture 120 Experimentando un Error de CORS

Lecture 121 Configurando CORS en ASP.NET Core

Lecture 122 Retornando Cabeceras Personalizadas - CORS

Lecture 123 Entendiendo la Encriptación

Lecture 124 Encriptación en ASP.NET Core

Lecture 125 Ejemplo Práctico de Encriptación Limitada por Tiempo - Links que Expiran

Lecture 126 Llaves de Protección de Datos

Lecture 127 Entendiendo Hashing

Lecture 128 Hashes en ASP.NET Core

Lecture 129 Resumen

Section 8: Escenarios Avanzados

Lecture 130 Introducción

Lecture 131 Limpiar

Lecture 132 Instalando Swagger

Lecture 133 Agregando Informaciones Extras a Swagger

Lecture 134 Agregando Descripciones a las Acciones

Lecture 135 Swagger y JWT

Lecture 136 Personalizando Los Endpoints En los Que Swagger usa JWT - IParameterFilter

Lecture 137 Paginación

Lecture 138 Paginación en Libros

Lecture 139 Preparando el Terreno Para Guardar Imágenes

Lecture 140 Salvando Imágenes en Azure

Lecture 141 Salvando Imágenes Localmente

Lecture 142 Filtros Dinámicos con EF Core

Lecture 143 Ordenado Dinámico

Lecture 144 Borrado Lógico y Filtros Globales

Lecture 145 Implementando Cache con OutputCache

Lecture 146 Limpiando el Cache

Lecture 147 Introducción al Cache Distribuido

Lecture 148 Creando una Base de Datos en Redis

Lecture 149 Utilizando Redis en ASP.NET Core

Lecture 150 Introducción a los Filtros

Lecture 151 Creando Nuestro Primer Filtro

Lecture 152 Filtros Que Aceptan Parámetros

Lecture 153 Filtros Globales

Lecture 154 Filtro Para Centralizar Validaciones Repetidas

Lecture 155 Manejo de Errores

Lecture 156 Versionando el Web API

Lecture 157 Versionando el Web API con la URL

Lecture 158 Evitando Repetición de Código al Versionar

Lecture 159 Swagger y Versionamiento

Lecture 160 Introducción a HATEOAS

Lecture 161 Implementando HATEOAS

Lecture 162 Agregando Otras Rutas

Lecture 163 Removiendo Rutas las Cuales el Usuario No Puede Usar

Lecture 164 Enlaces HATEOAS en un DTO

Lecture 165 Enlaces de HATEOAS en un Listado

Lecture 166 Excluir HATEOAS con un Query String

Lecture 167 HATEOAS y Filtros (Parte 1)

Lecture 168 HATEOAS y Filtros (Parte 2)

Lecture 169 Resumen

Section 9: Pruebas Automáticas

Lecture 170 Introducción

Lecture 171 Limpiando el Proyecto

Lecture 172 ¿Qué es una Prueba?

Lecture 173 Pruebas Automáticas

Lecture 174 Pruebas Unitarias

Lecture 175 Nuestra Primera Prueba Unitaria

Lecture 176 Ejecutando una Misma Prueba con Distintos Valores

Lecture 177 Agregando Más Pruebas Unitarias

Lecture 178 Probando EF Core

Lecture 179 Preparándonos para Probar Controladores

Lecture 180 Probando el Controlador de Autores - Obtener por Id

Lecture 181 Probando la Creación de un Autor

Lecture 182 Verificando que usemos una dependencia

Lecture 183 ¿Por que usar varios contextos? - Evitando Falsos Positivos

Lecture 184 Evitando Repetir Código

Lecture 185 Probando el Put de Autores

Lecture 186 Probando el Patch de Autores

Lecture 187 Probando el Delete de Autores

Lecture 188 Probando un Método que usa el HttpContext

Lecture 189 Probando un Método que usa Claims

Lecture 190 Preparándonos para Probar Login y Registro

Lecture 191 Probando los Métodos de Registro y Login

Lecture 192 Pruebas de Integración

Lecture 193 Configurando las Pruebas de Integración en ASP.NET Core

Lecture 194 Nuestra Primera Prueba de Integración

Lecture 195 Verificando que una Acción Está Protegida

Lecture 196 Métodos Auxiliares para Crear Usuarios en Pruebas de Integración

Lecture 197 Verificando que Sólo un Admin Pueda Crear un Recurso

Lecture 198 Probando que un Usuario no Pueda Borrar el Comentario de Otro

Lecture 199 Probando que un Filtro se Ejecuta

Lecture 200 Resumen

Section 10: Despliegues

Lecture 201 Introducción

Lecture 202 Publicando en Azure - Managed Identity

Lecture 203 Publicando en Azure - Usuario y Password

Lecture 204 Publicando en Azure usando VS Code

Lecture 205 ¿Qué hacer si la app no sube?

Lecture 206 Viendo errores en producción

Lecture 207 Publicando en IIS

Lecture 208 Integración continua y Entrega Continua

Lecture 209 Subiendo el código a GitHub

Lecture 210 Breve Introducción a los GitHub Actions

Lecture 211 Implementando la Integración Continua

Lecture 212 Implementando la Entrega Continua

Lecture 213 Resumen

Section 11: Proyecto Final

Lecture 214 Introducción

Lecture 215 Introducción a Postman

Lecture 216 Esquema de las Entidades del Proyecto

Lecture 217 Creando el Proyecto

Lecture 218 Configurando EF Core

Lecture 219 Creando el Controlador de Géneros de Películas

Lecture 220 Entidad Actor

Lecture 221 Subiendo una Imagen al Web API

Lecture 222 Validando Imágenes

Lecture 223 Subiendo Imágenes hacia Azure Storage

Lecture 224 Subiendo Imágenes hacia Azure Storage (Parte 2)

Lecture 225 Subiendo Imágenes hacia el wwwroot (alternativa a Azure Storage)

Lecture 226 HTTP Patch

Lecture 227 Paginación

Lecture 228 Entidad Película

Lecture 229 Relaciones Muchos a Muchos

Lecture 230 Model Binder Personalizado

Lecture 231 Filtrando Películas

Lecture 232 Data Relacionada

Lecture 233 Order By

Lecture 234 CustomBaseController

Lecture 235 Entidad Sala de Cine - CRUD

Lecture 236 Configurando NetTopologySuite

Lecture 237 Queries Espaciales

Lecture 238 Sistema de Usuarios

Lecture 239 Entidad Reviews - Relación con Usuarios

Lecture 240 Pruebas Unitarias - Proveedor En Memoria de EF Core

Lecture 241 Controlador de Géneros - Pruebas Unitarias

Lecture 242 Controlador de Actores - Pruebas Unitarias

Lecture 243 Controlador de Películas - Pruebas Unitarias

Lecture 244 Controlador de Cuentas - Pruebas Unitarias

Lecture 245 Controlador de Cines - Pruebas Unitarias

Lecture 246 Controlador de Reviews - Pruebas Unitarias

Lecture 247 Métodos Auxiliares - Pruebas de Integración

Lecture 248 Controlador de Géneros - Pruebas de Integración

Lecture 249 Controlador de Reviews - Pruebas de Integración

Lecture 250 Publicando el Proyecto en un Azure App Service - Application Insights

Section 12: Bono: Construyendo un API con Suscripciones

Lecture 251 Introducción

Lecture 252 Lo Que Haremos

Lecture 253 Preparando el Proyecto

Lecture 254 Entidad Llave

Lecture 255 Gestionando las Llaves

Lecture 256 Probando la Gestión de Llaves

Lecture 257 Creando el Middleware de Limitar Peticiones

Lecture 258 Limitando las Peticiones por Día

Lecture 259 Lista Blanca de Rutas

Lecture 260 Restricciones

Lecture 261 Restricciones por Dominio

Lecture 262 Restricciones por IP

Lecture 263 CRUD Restricciones por Dominio

Lecture 264 CRUD Restricciones por IP

Lecture 265 Llaves no Gratuitas

Lecture 266 Entidad Factura

Lecture 267 Creando el Query de las Facturas

Lecture 268 Emitiendo Facturas Mensuales

Lecture 269 Setear Usuario Mala Paga

Lecture 270 Saldando Facturas

Section 13: Miscelaneos

Lecture 271 Factorías - Inyección de Dependencias

Lecture 272 Agregando Soporte de XML - Accept, Content-Type y Negociación de Contenido

Programadores de .NET que quieren aprender a construir Web APIs