Soenneker.Extensions.IHttpContextAccessors
4.0.111
Prefix Reserved
dotnet add package Soenneker.Extensions.IHttpContextAccessors --version 4.0.111
NuGet\Install-Package Soenneker.Extensions.IHttpContextAccessors -Version 4.0.111
<PackageReference Include="Soenneker.Extensions.IHttpContextAccessors" Version="4.0.111" />
<PackageVersion Include="Soenneker.Extensions.IHttpContextAccessors" Version="4.0.111" />
<PackageReference Include="Soenneker.Extensions.IHttpContextAccessors" />
paket add Soenneker.Extensions.IHttpContextAccessors --version 4.0.111
#r "nuget: Soenneker.Extensions.IHttpContextAccessors, 4.0.111"
#:package Soenneker.Extensions.IHttpContextAccessors@4.0.111
#addin nuget:?package=Soenneker.Extensions.IHttpContextAccessors&version=4.0.111
#tool nuget:?package=Soenneker.Extensions.IHttpContextAccessors&version=4.0.111
Soenneker.Extensions.IHttpContextAccessors
Extension methods for retrieving common request and connection data through an injected IHttpContextAccessor.
Installation
dotnet add package Soenneker.Extensions.IHttpContextAccessors
Usage
Register the ASP.NET Core accessor once:
builder.Services.AddHttpContextAccessor();
Then read the address while an HTTP request is active:
using Soenneker.Extensions.IHttpContextAccessors;
string? clientIp = httpContextAccessor.GetRequestIp();
GetRequestIp() delegates to the companion HttpContext extension. It uses a valid CF-Connecting-IP address first, then a valid first address from X-Forwarded-For, then the connection's remote IP. Malformed header values are ignored. It returns null when there is no active HttpContext or no address can be found.
Forwarded headers are caller-controlled unless your proxy and ASP.NET Core forwarded-header configuration establish trust. Do not treat the returned text as authenticated identity by itself.
IHttpContextAccessor.HttpContext is request-flow state. Call this extension when the value is needed; do not capture the HttpContext for later background work. If a background operation needs the address, copy the returned string into the work item while handling the request.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Soenneker.Extensions.HttpContext (>= 4.0.730)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 4.0.111 | 5 | 8/31/2026 |
| 4.0.110 | 26 | 8/31/2026 |
| 4.0.109 | 38 | 8/31/2026 |
| 4.0.108 | 74 | 8/30/2026 |
| 4.0.107 | 78 | 8/30/2026 |
| 4.0.106 | 72 | 8/30/2026 |
| 4.0.105 | 70 | 8/29/2026 |
| 4.0.103 | 69 | 8/29/2026 |
| 4.0.102 | 99 | 8/26/2026 |
| 4.0.101 | 72 | 8/26/2026 |
| 4.0.100 | 95 | 8/21/2026 |
| 4.0.99 | 123 | 8/19/2026 |
| 4.0.98 | 111 | 8/18/2026 |
| 4.0.97 | 146 | 8/12/2026 |
| 4.0.96 | 105 | 8/8/2026 |
| 4.0.95 | 110 | 8/7/2026 |
| 4.0.94 | 132 | 7/29/2026 |
| 4.0.93 | 109 | 7/29/2026 |
| 4.0.92 | 118 | 7/28/2026 |
| 4.0.91 | 119 | 7/28/2026 |
Updated NuGet packages