yönergelerinde HTTP kimlik doğrulaması parametrelerini düzgün göndererek Microsoft'un HttpClient
'u kullanarak üçüncü taraf bir RESTful hizmetine istekte bulunuyorum. Bu tek örnek dışında kusursuz çalışır (ve uygulanması çok kolaydır). kaynak işleri grubuna POST zaman tamamlar, bu grup örneğine bir HTTP 302 yönlendirmesi yapmasıdırMicrosoft.Http.HttpClient,
"yol: Burada hata sırasında oluşan ne gibi sağlayıcıdan bir arıza olduğunu Gerçekleşen, HTTP İstemcinizin doğru kimlik doğrulama bilgilerini POST'a göndermesidir. Bu, grubu kaynağını oluşturur, ancak HTTP 302 isteği için GET'i işlediğinde, doğru kimlik bilgilerini göndermez ve 401 yanıtı alıyor. İstemci kitaplığınızı kontrol edebilir ve yeniden göndermelerde HTTP auth parametrelerinin düzgün şekilde gönderilmesini sağlayabilir misiniz? " İşte
benim POST kodu: Sorumun getiriyorHttpClient http = new HttpClient(BASE_URL);
http.TransportSettings.Credentials = new NetworkCredential(ACCOUNT_SID,
ACCOUNT_TOKEN);
HttpResponseMessage httpResponse = http.Post(groupUri, "application/xml",
HttpContent.Create(xml.ToString()));
result = httpResponse.Content.ReadAsString();
; HttpClient
sınıfını kullanarak bu GET yönlendirme üzerinde göndermek için kimlik doğrulama parametrelerini nasıl alabilirim?
Muhtemelen oturumları için kullanmıyor olduğunuz çerezler olabilir (onlara sorun). Her yönlendirme sonrasında (farklı bir webApp veya sunucuya yönlendirilmedikçe) giriş bilgisi istemek garip olurdu. –
- Jaroslav, çerezlerle ilgili cevaplarını bekliyorum. Onları göndermek için doğru yoldan haberdar mısınız? Bu satırı eklemeyi denedim: http.TransportSettings.Cookies = new CookieContainer(); Şanssız – Drew
WCF REST başlangıç kitinden HttpClient'i mi kullanıyorsunuz? hangi .net framework? HttpClient'in yönlendirmeleri otomatik olarak takip edip etmeyeceğini kontrol etmek için herhangi bir özelliği var mı? (HttpWebRequest.AllowAutoRedirect benzer)? –