35 votes

Comment désactiver l'en-tête "Expect : 100 continue" dans le HttpWebRequest de WinRT ?

Je développe une application qui, pour des raisons d'héritage de code, ne peut pas être mise à jour pour la nouvelle version de l'application. HttpClient donc j'utilise HttpWebRequests .

En .NET 4, nous pouvions désactiver l'en-tête Expect (sur les requêtes post) en utilisant ServicePoint.Expect100Continue mais sur WinRT, elle n'est pas disponible.

Comment cela peut-il être réalisé sur WinRT ?

EDIT : System.Net.ServicePointManager.Expect100Continue n'est pas non plus disponible.

63voto

Flatliner DOA Points 1275
var c = new HttpClient();
c.DefaultRequestHeaders.ExpectContinue = false;

12voto

8bitcat Points 1268

Mettez ceci dans votre webconfig.

<system.net>
  <settings> 
    <servicePointManager expect100Continue="false"/>  
  </settings> 
</system.net>

Ça marche aussi ! Je l'utilise dans mon application web. Mais la réponse ci-dessus est tout aussi bonne !

1voto

Radin Gospodinov Points 159

Il semble que la seule option que vous ayez soit de remplacer BeginGetRequestStream. HttpWebRequest possède une méthode privée MakeRequest, dans laquelle l'en-tête Expect100Continue est ajouté à la collection d'en-têtes de la requête.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X