2017-11-11 2 views
1

Ich mache einen einfachen HttpClient Aufruf wie folgt:HttpResponseMessage fehlende Header während Httpclient verwenden, aber Fiedler findet es

Uri basePath = new Uri("https://my-host.com/"); 
string path = "api/my-path"; 

using (HttpClient httpClient = new HttpClient()) 
{ 
    httpClient.BaseAddress = basePath; 

    HttpResponseMessage response = await httpClient.GetAsync(path); 
    if (response.IsSuccessStatusCode) 
    { 
     response.Headers.Select(header => header.Key).Dump(); 
    } 
} 

ich auf der Antwort für einen benutzerdefinierten Auth-Header suchen, aber es fehlt, wenn ich über iterieren Headers Sammlung.

Allerdings zeigt dieselbe HTTP-Anforderung, die von Fiddler abgefangen wird, die Kopfzeile. Wenn ich die gleiche Anfrage auf Postman oder einen Browser mache, sehe ich die Kopfzeile.

Ich frage mich, was ich hier vermisse.

[Update]

Raw Headers auf Fiddler erfasst von oben denselben Code ausführen:

HTTP/1.1 302 Found 
Cache-Control: no-cache 
Pragma: no-cache 
Expires: -1 
Location: <redacted> 
Server: Microsoft-IIS/8.0 
WWW-Authenticate-Test: <redacted> 
X-AspNet-Version: 4.0.30319 
Set-Cookie: <redacted> 
X-UA-Compatible: IE=edge 
Date: Sat, 11 Nov 2017 23:15:19 GMT 
Content-Length: 0 

Headers von oben Code gedruckt:

Pragma 
Strict-Transport-Security 
X-Content-Type-Options 
X-Frame-Options 
x-ms-request-id 
Cache-Control 
P3P 
Set-Cookie 
Server 
X-Powered-By 
Date 

ich den Header erfassen möchte WWW-Authenticate-Test was irgendwie herausgefiltert wird, während es durch die HttpClient Magie geht.

+1

Nach mehr Forschung, erkannte ich, 'HttpClient' Streifen Auth-Header aus der Antwort, wann immer es eine Umleitung (für Sicherheit). So scheint die Lösung den Server zu reparieren 200 statt 302/301 – Amit

Antwort

1

Es ist wahrscheinlich ein content header:

response.Content.Headers.Select(header => header.Key).Dump(); 
+0

Nein, die Antwort hat keine Stelle und ich habe den Inhalt Header verifiziert. – Amit

+0

Können Sie Ihre Frage aktualisieren, um die Kopfzeilen, die Sie in Fiddler sehen, zu erfassen - wir können dann Reproduktionen erstellen ... –

Verwandte Themen