2017-05-11 8 views
1

gesetzt Ich versuche, den User-Agent in meinem HTTP-Header in unserem Override-Funktion GetWebRequest in C#Wie kann ich den User-Agent in dem HTTP-Header

protected override System.Net.WebRequest GetWebRequest(Uri uri) 
{ 
    System.Net.HttpWebRequest request = base.GetWebRequest(uri) as System.Net.HttpWebRequest;     
    request.Headers.Add("User-Agent", ([email protected]")); 
    request.ProtocolVersion = System.Net.HttpVersion.Version10; 
    request.CachePolicy = new RequestCachePolicy(RequestCacheLevel.NoCacheNoStore); 
    request.KeepAlive = false; 
    return request; 
} 

Meine Anfrage mit ein zurückgegeben wird eingestellt Fehler und mir wurde gesagt, dass sie den User-Agent nicht sehen. Ich habe andere Möglichkeiten ausprobiert, um den Header User-Agent zu setzen, aber nichts funktioniert so weit. Einige andere Möglichkeiten, wie ich versucht habe, sind

request.Headers["User-Agent"] = "[email protected]"); 
request.UserAgent = "[email protected]"; 
request.Headers.Set("User-Agent", "[email protected]"); 

Die Seite Ich versuche, meine Anfrage zu senden ist mir zu sagen, es braucht einen Weg, uns zu identifizieren, bei Fragen und „Bitte stellen Sie sicher, dass Ihre Anfrage das enthält“ User- Agent "http-Header." Sie haben mir ein Beispiel geschickt, aber es ist mit CURL

curl_setopt($ch, CURLOPT_USERAGENT,'[email protected]) 
+0

Haben Sie versucht, Set User-Agent mit „Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, wie Gecko) Chrome/58.0.3029.96 afari/537.36 "? –

Antwort

0

Ich denke, Sie verwenden die Benutzer-Agent-Header falsch. Von MSDN:

Wenn Sie eine Webseite besuchen, sendet Ihr Browser den User-Agent-String der Server die Website-Hosting, die Sie besuchen. Diese Zeichenfolge gibt an, welchen Browser Sie verwenden, ihre Versionsnummer und Details über Ihr System, z. B. Betriebssystem und Version. Der Web-Server kann diese Informationen verwenden, um Inhalt bereitzustellen, der für Ihren spezifischen Browser auf zugeschnitten ist.

Ein Beispiel von dieser Seite:

User-Agent: Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv: 11.0) wie Gecko

0

User-agent stellen Sie Ihren Browser wie Firefox oder Chrome dar.

Verwenden Sie die UserAgent-Eigenschaft in HttpWebRequest, indem Sie sie in ein HttpWebRequest

012 umwandeln
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); 
request.UserAgent = "my user agent"; 

oder

request = new HttpClient(); 
request.DefaultRequestHeaders.TryAddWithoutValidation("User-Agent", "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:44.0) Gecko/20100101 Firefox/44.0"); 
Verwandte Themen