Abrufen des HTTP-Verweises in ASP.NET
Ich bin auf der Suche nach einer schnellen, einfachen und zuverlässigen Weg, um den browser HTTP Referrer in ASP.Net (C#). Ich kenne das HTTP-Referrer selbst unzuverlässig ist, aber ich möchte einen zuverlässigen Weg, um die referrer-wenn es ist vorhanden.
Kommentar zu dem Problem - Öffnen
möglich, Duplikat der Wie bekomme ich die referrer-URL, die in einer ASP.NET MVC-Aktion?
Fro Asp.Net Kern finden Sie unter Wie bekomme ich den Url-Referrer in ASP.NET Kern MVC?
InformationsquelleAutor der Frage Chuck Le Butt | 2010-11-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Könnten Sie die UrlReferrer - Eigenschaft der aktuellen Anfrage:
Lesen der Referer HTTP-header aus der Anfrage, die kann oder kann nicht bereitgestellt werden durch den client (user-agent).
InformationsquelleAutor der Antwort Darin Dimitrov
Verwenden Sie die
Request.UrlReferrer
Eigenschaft.Unterhalb der Szenen ist es nur die überprüfung der
ServerVariables("HTTP_REFERER")
Eigenschaft.InformationsquelleAutor der Antwort Dismissile
Erklärung
Den
Request.UrlReferer
werfen wirdSystem.UriFormatException
wenn der referer-HTTP-header ist ungültig (kann passieren, da ist es in der Regel nicht unter Ihrer Kontrolle).Als für die Verwendung
Request.ServerVariables
pro MSDN:Anfrage.ServerVariables Collection
Anfrage.Header-Eigenschaft
Request.Headers
ist eine bessere Wahl alsRequest.ServerVariables
, daRequest.ServerVariables
enthält alle Umgebungsvariablen sowie die Kopfzeilen, woRequest.Headers
ist eine sehr viel kürzere Liste enthält nur die Header.So die beste Lösung ist die Verwendung der
Request.Headers
Sammlung Lesen Sie den Wert direkt ein. Tun beachten Microsofts Warnungen über HTML-Codierung den Wert, wenn Sie gehen, um anzeigen auf einer form, obwohl.InformationsquelleAutor der Antwort NightOwl888
Wie diese: HttpRequest.UrlReferrer Eigenschaft
InformationsquelleAutor der Antwort Tom
Da Google führt Sie zu diesem post bei der Suche nach
C# Web API Referrer
hier ist der deal:Web API
verwendet eine andere Art vonRequest
normal ausMVC Request
genanntHttpRequestMessage
die zählen nichtUrlReferrer
. Da eine normaleWeb API
Anfrage nicht enthalten diese Informationen, wenn Sie es wirklich brauchen, Sie müssen Ihre Kunden gehen aus dem Weg, um es aufzunehmen. Sie könnten zwar machen diesen Teil IhrerAPI Object
eine bessere Möglichkeit ist die VerwendungHeaders
.Ersten, können Sie erweitern
HttpRequestMessage
um eineUrlReferrer()
Methode:Dann Ihre Kunden benötigen, um die
Referrer Header
IhrerAPI Request
:Und jetzt die
Web API Request
enthält der referrer-Daten, die Sie zugreifen können, wie Sie diese aus IhrerWeb API
:InformationsquelleAutor der Antwort Serj Sagan
Ich mit .Net Core 2 mvc,
diese eine Arbeit für mich ( um die Vorschau-Seite) :
InformationsquelleAutor der Antwort Saad Ali
InformationsquelleAutor der Antwort Donat Sasin
Irgendwann müssen Sie alle verknüpfen, wie dies
(in option bei der "Aktuellen" nicht gegründet)
InformationsquelleAutor der Antwort Sportac