2015-01-22 10 views
6

Devo effettuare una richiesta a un servizio web che utilizza HTTP versione 1.0. Sto usando HttpClient, ma non riesco a vedere alcuna opzione per impostare la versione HTTP.Impostare la versione del protocollo HTTP in HttpClient

Dove posso impostare la versione richiesta?

+1

Fuori di interesse, posso chiedere perché? – poke

+1

Guarda qui: https://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.protocolversion%28v=vs.110%29.aspx – Icemanind

+0

@Icemanind, l'esempio utilizza httpwebrequest, che però usa httpclient nella mia applicazione. – mysticcode

risposta

7

Per impostare la versione, è necessario creare un'istanza di HttpRequestMessage e impostare la proprietà Version passata a HttpClient.SendAsync. È possibile utilizzare la classe helper HttpVersion utilità:

var requestMessage = new HttpRequestMessage 
{ 
    Version = HttpVersion.Version10 
}; 

var client = new HttpClient(); 
var response = await client.SendAsync(requestMessage); 
+0

La mia app UWP ha HttpRequestMessage ma non contiene un proprietario chiamato 'Versione'. qualche idea? – SurenSaluka

0

La versione HTTP viene inviata come intestazione in ogni richiesta, quindi viene impostata nel messaggio inviato da System.Net.Http.HttpClient: consultare la proprietà ProtocolVersion della classe HttpWebRequest.

Problemi correlati