Obecnie pracuję nad wrapper API. Jeśli wyślę zły kod: Consumer Key
, serwer zwróci Status
jako 403 Forbidden
w nagłówku. Przekaże także niestandardowe nagłówki. Jak faktycznie pobrać te niestandardowe nagłówki?HttpClient pobrać wszystkie nagłówki
To jest odpowiedź otrzymana z serwera.
Cache-Control: private
Date: Wed, 01 May 2013 14:36:17 GMT
P3P: policyref="/w3c/p3p.xml", CP="ALL CURa ADMa DEVa OUR IND UNI COM NAV INT STA PRE"
Server: Apache/2.2.23 (Amazon)
Status: 403 Forbidden
X-Error: Invalid consumer key.
X-Error-Code: 152
X-Powered-By: PHP/5.3.20
Connection: keep-alive
muszę odzyskać X-Error
i X-Error-Code
. Obecnie używam klasy HttpClient
do przetwarzania żądania. Jeśli mogę oglądać nagłówki odpowiedzi pod Szybkie Watch w VS Studio 2012, mogę go znaleźć jak ten
((System.Net.Http.Headers.HttpHeaders)(response.Headers)).headerStore["X-Error-Code"].ParsedValue
Czy jest jakiś inny sposób to zrobić?
Edytuj: headerStore
jest niedostępny przez kod, ponieważ jest to pole prywatne. Dostaję do niego dostęp tylko przez okno Szybkiego oglądania.
To jest mój urywek na żądanie:
var response = await _httpClient.PostAsync("/v3/oauth/request", content);
Nie, nie mogę tego zrobić, jak bym tego błędu 'Error 3Cannot stosuje indeksowanie z [] w celu wyrażenia typu System.Net.Http.Headers.HttpResponseHeaders''. Zaktualizuję powyższy kod, aby uzyskać jasność. –
@ShulhiSapli: Ah - nie zauważyłem, że był to "HttpClient". Dokona edycji. –
Jeśli potrzebujesz więcej szczegółów, możesz zajrzeć tutaj, https://github.com/shulhi/PocketNet/blob/dev/PocketNet/PocketNet/Authenticator/PocketOauth.cs –