UserHostAddress i Asp.net Kjerne

stemmer
15

Hva er tilsvarende i Asp.Net 5 av den gamle HttpContext.Request.UserHostAddress?

Jeg prøvde this.ActionContext.HttpContext, men kan ikke finne den UserHostAddress eller de servervariables egenskaper.

Takk

Publisert på 25/11/2014 klokken 17:22
kilden bruker
På andre språk...                            


4 svar

stemmer
12

HttpRequest.UserHostAddressgir IP-adressen til den eksterne klienten. I ASP.NET kjerne 1.0, må du bruke HTTP-tilkobling funksjonen for å få det samme. HttpContexthar GetFeature<T>metode som du kan bruke for å få en bestemt funksjon. Som et eksempel, hvis du ønsker å hente den eksterne IP-adresse fra en kontroller handling metoden, kan du gjøre noe som dette.

var connectionFeature = Context
           .GetFeature<Microsoft.AspNet.HttpFeature.IHttpConnectionFeature>();

if (connectionFeature != null)
{
    string ip = connectionFeature.RemoteIpAddress.ToString();
}
Svarte 25/11/2014 kl. 17:41
kilden bruker

stemmer
11

Dette har gått siden den opprinnelige svaret ble postet. Tilgang til det nå via

httpContext.Features.Get<IHttpConnectionFeature>()?.RemoteIpAddress
Svarte 02/02/2016 kl. 03:43
kilden bruker

stemmer
2

Hvis du har tilgang til den HttpContext, kan du få Local / Remote IP-adresse fra Connectioneiendommen slik:

var remote = this.HttpContext.Connection.RemoteIpAddress;
var local = this.HttpContext.Connection.LocalIpAddress;
Svarte 16/06/2017 kl. 13:21
kilden bruker

stemmer
0

For aspnet RC1-Update1 fant IP (med port) i X-Forwarded-Forspissen, som er verdien kan nås fra styreenheten som HttpContext.Request.Headers["X-Forwarded-For"].FirstOrDefault().

Svarte 09/03/2016 kl. 10:37
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more