2011-12-15 15 views

cevap

119

Bir dize indeksi Headers özelliğini kullanın Windows Phone HttpWebRequest nesneye Özel Başlığını ekleyebilir Nasıl:

    :

    request.Headers["X-My-Custom-Header"] = "the-value"; 
    

    MSDN göre bu yana kullanılmaktadır

  • Evrensel Windows Platform 4.5
  • .NET Framework 1.1
  • Taşınabilir Sınıf Kitaplığı
  • Silverlight 2.0
  • Windows Phone Silverlight 7.0
  • Windows Phone 8,1

https://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.headers(v=vs.110).aspx

+0

da dize değiştirilebilir bu httpWebRequest.Headers [HttpRequestHeader.Authorization] = "value" gibi enum HttpRequestHeader ile; – OXXY

+1

Bu, orijinal soruya @OXXY yanıt vermiyordu. 'HttpRequestHeader' sayımı, standart başlıklar içindir - özel olanlar için değil. –

+0

evet haklısınızdır, bir – OXXY

12

JSON yanıtını, hizmet oluşturmak başlıklar ekleyerek ve okuma basit bir yöntem

private static void WebRequest() 
    { 
     const string WEBSERVICE_URL = "<<Web service URL>>"; 
     try 
     { 
      var webRequest = System.Net.WebRequest.Create(WEBSERVICE_URL); 
      if (webRequest != null) 
      { 
       webRequest.Method = "GET"; 
       webRequest.Timeout = 12000; 
       webRequest.ContentType = "application/json"; 
       webRequest.Headers.Add("Authorization", "Basic dchZ2VudDM6cGFdGVzC5zc3dvmQ="); 

       using (System.IO.Stream s = webRequest.GetResponse().GetResponseStream()) 
       { 
        using (System.IO.StreamReader sr = new System.IO.StreamReader(s)) 
        { 
         var jsonResponse = sr.ReadToEnd(); 
         Console.WriteLine(String.Format("Response: {0}", jsonResponse)); 
        } 
       } 
      } 
     } 
     catch (Exception ex) 
     { 
      Console.WriteLine(ex.ToString()); 
     } 
    } 
+0

'Yetkilendirme' özel bir başlık değil ve daha kontrollü bir şekilde ele alınmalıdır. –