
HttpClient & Networking
HttpClient, HttpClientFactory, request/response, manejo de errores, retry policies, patrones async
1¿Por qué usar IHttpClientFactory en lugar de instanciar HttpClient directamente?
¿Por qué usar IHttpClientFactory en lugar de instanciar HttpClient directamente?
Respuesta
IHttpClientFactory gestiona automáticamente el ciclo de vida de las instancias de HttpClient y previene el socket exhaustion. Instanciar HttpClient directamente en un using puede causar problemas de conexiones en estado TIME_WAIT que permanecen abiertas incluso después del disposal. Usar IHttpClientFactory también permite configurar políticas de resiliencia con Polly y gestionar eficientemente el pooling de conexiones.
2¿Cuál es la diferencia principal entre un Named Client y un Typed Client?
¿Cuál es la diferencia principal entre un Named Client y un Typed Client?
Respuesta
Un Typed Client encapsula la lógica de llamada HTTP en una clase dedicada con inyección de dependencias, mientras que un Named Client se obtiene mediante IHttpClientFactory.CreateClient(name). Los Typed Clients ofrecen una mejor separación de responsabilidades y facilitan las pruebas unitarias al encapsular la configuración y la lógica de negocio. Los Named Clients son útiles para casos simples donde se necesitan varias configuraciones diferentes sin lógica de negocio compleja.
3¿Cómo configurar un timeout global para todas las instancias de HttpClient de una aplicación?
¿Cómo configurar un timeout global para todas las instancias de HttpClient de una aplicación?
Respuesta
Configurar el timeout mediante ConfigurePrimaryHttpMessageHandler permite definir un timeout a nivel del handler que se aplicará a todos los clientes creados por la factory. Este enfoque centraliza la configuración y evita repetir código. También es posible configurar el timeout individualmente en cada HttpClient, pero esto se vuelve difícil de mantener en una aplicación grande con varios clientes configurados.
¿Qué método permite leer el cuerpo de una respuesta HTTP como una cadena de caracteres?
¿Cuál es el rol de un DelegatingHandler en el pipeline de HttpClient?
+17 preguntas de entrevista
Otros temas de entrevista .NET
Fundamentos de C#
LINQ & Delegates
Fundamentos del lenguaje C#
Fundamentos de ASP.NET Core
Ciclo de vida de las solicitudes en ASP.NET Core
Configuration & Settings
Ciclo de vida de la aplicación
Dependency Injection
Entity Framework Core
Minimal APIs
Desarrollo de Web API
Async en ASP.NET Core
Authentication & Authorization
Serialización JSON
Entity Framework Core avanzado
Características avanzadas de C#
Clean Architecture
Logging, Monitoring & Observability
Pruebas unitarias y xUnit
Pruebas de integración
Docker & Containerization
NuGet Package Management
Memory Management & GC
Programación reactiva
Async/await & Patterns
.NET Design Patterns
Optimización del rendimiento
Seguridad y Best Practices
SignalR y tiempo real
Arquitectura de Microservicios
Domina .NET para tu próxima entrevista
Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.
Empieza gratis