Tag: HttpClient
All the articles with the tag "HttpClient".
-
HttpClient 日志与可观测性:ILogger、DelegatingHandler 和 OpenTelemetry
Published: at 12:18 PM详解 .NET 10 中 HttpClient 的日志记录与可观测性方案:内置 ILogger 集成、DelegatingHandler 自定义日志、敏感头安全过滤、OpenTelemetry 分布式追踪与指标,附完整生产级代码示例。
-
Mock HttpClient C#:DelegatingHandler、Mock 处理器与集成测试
Published: at 12:38 AM从零学会在 .NET 10 中 Mock HttpClient:自定义 HttpMessageHandler 桩、DelegatingHandler 拦截器、IHttpClientFactory 注入、WebApplicationFactory 集成测试,以及韧性管线验证。每一步都能照着做出来。
-
HttpClient 流式传输:用 ResponseHeadersRead 和 ReadAsStreamAsync 处理海量数据
Published: at 03:57 AM默认的 HttpClient 会把整个响应体缓存到内存再交给你,下载 1GB 文件就会占用 1GB 堆内存。本文讲解如何用 HttpCompletionOption.ResponseHeadersRead 开启流式读取,配合 ReadAsStreamAsync、DeserializeAsyncEnumerable、SseParser 等 API,将峰值内存从响应尺寸级降到缓冲区级(约 80KB),覆盖大文件下载、JSON 数组流式反序列化和 Server-Sent Events 三种真实场景。
-
HttpClient 弹性策略:.NET 10 中的超时、重试与断路器
Published: at 04:06 AM用 Microsoft.Extensions.Http.Resilience 一行代码给 HttpClient 加上重试、断路器、对冲和分层超时。对比 Polly 手写时代与现代表配式弹性管道,覆盖自定义配置、可观测性和生产级完整示例。
-
HttpClient DNS 问题:PooledConnectionLifetime 与 SocketsHttpHandler
Published: at 04:51 AM深入理解 HttpClient DNS 过期的根因——TCP 连接池使 DNS 只解析一次。掌握 SocketsHttpHandler.PooledConnectionLifetime 和 IHttpClientFactory handler 轮换两种修复方式,以及在 Kubernetes 环境中的调优策略。
-
HttpClient in C# 完全指南:.NET 开发者的正确用法
Published: at 11:23 PM从 new HttpClient() 的三个反模式到 IHttpClientFactory 的生产级用法,覆盖 handler 池化、类型化客户端、超时与取消、弹性策略、流式响应、HTTP/3 和测试策略的完整指南。
-
IHttpClientFactory 在 .NET 中的使用:命名客户端、类型化客户端与依赖注入模式
Published: at 11:07 PM了解 IHttpClientFactory 如何解决 HttpClient 的 socket 耗尽和 DNS 过期两个生产环境问题。本文覆盖基础工厂、命名客户端、类型化客户端三种模式,以及 DelegatingHandler 管道和注册陷阱,帮你在实际项目中选对方法。
-
为 .NET HttpClient 实现 RFC 标准 HTTP 缓存
Published: at 04:49 AM介绍如何通过 Meziantou.Framework.Http.Caching 包为 HttpClient 添加符合 RFC 7234 和 RFC 8246 标准的 HTTP 缓存支持,覆盖基础用法、依赖注入集成、客户端缓存指令和并发安全机制。