SORU
31 AĞUSTOS 2012, Cuma


Nasıl bu istekle birlikte kimlik bilgileri iletmek için HttpClient almak için?

Bir Windows servisi konuşan bir web uygulaması (IIS). Windows hizmeti ASP.NET MVC Web API (kendi kendine barındırılan) kullanılarak, http üzerinden JSON kullanarak iletilebilir. Web uygulama kimliğe bürünme yapmak için yapılandırılmış, fikri web uygulama isteği yapan kullanıcı web uygulaması hizmeti için istek yapmak için kullandığı kullanıcı olmalıdır. Yapısı bu gibi görünüyor:

(Kullanıcı kırmızı ile işaretlenmiş kullanıcı örneklerde aşağıda belirtilen ediliyor.)


Web uygulama Windows hizmeti HttpClient: bir kullanarak isteklerini yapar

var httpClient = new HttpClient(new HttpClientHandler() 
                      {
                          UseDefaultCredentials = true
                      });
httpClient.GetStringAsync("http://localhost/some/endpoint/");

Bu Windows hizmeti için istek yapar, ama kimlik bilgileri doğru (IIS APPPOOL\ASP.NET 4.0 kullanıcı raporları) pas vermez.Bu olmasını istediğim şey değil.

WebClient yerine kullanmak için yukarıdaki kodu değiştirirsem, kullanıcının kimlik bilgilerini doğru geçti

WebClient c = new WebClient
                   {
                       UseDefaultCredentials = true
                   };
c.DownloadStringAsync(new Uri("http://localhost/some/endpoint/"));

Yukarıdaki kod ile, hizmet web için uygulama isteği yapan kullanıcının kullanıcı raporları.

Yanlış kimlik bilgileri doğru değil geçmesine neden olan HttpClient uygulama ile yapıyorum(HttpClient) ile ilgili bir hata mı?

Bu nedenle kullanmak istiyorum HttpClient işlemiş bir zaman uyumsuz API ile iyi çalışır Tasks, oysa WebClient'In asyc API gerekiyor işlenmiş olan olaylar.

CEVAP
15 NİSAN 2013, PAZARTESİ


HttpClient otomatik olarak bu gibi kimlik bilgileri iletmek için yapılandırabilirsiniz:

myClient = new HttpClient(new HttpClientHandler() { UseDefaultCredentials = true })

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Fullscreen

    Fullscreen

    23 Mart 2006
  • Mega64

    Mega64

    24 ŞUBAT 2006
  • Smith Micro Graphics

    Smith Micro

    15 Mayıs 2008