2017-09-29 10 views
0

Je crée une application avec C# et l'une des exigences est que les en-têtes doivent contenir des données très spécifiques. J'ai travaillé avec les classes WebClient et HttpWebRequest en C# mais les deux n'ont pas l'option de supprimer explicitement l'en-tête Connection. Voilà ce que j'ai essayé:HttpWebRequest ou WebClient - Supprimer l'en-tête Connection lors de l'envoi de données - C#

WebClient

client.Headers.Remove("Connection"); 
client.Headers.Add("Connection", null); // if only... 

HttpWebRequest

request.Connection = null; 
request.Connection = ""; 

Certains de ce que j'ai lu est que vous ne pouvez avoir cet en-tête réglé sur Keep-Alive ou Fermer. J'en ai besoin pour ne pas être sur la demande web.

Tous les autres en-têtes requis ajoutent très bien. C'est celui qui cause un mal de tête. Je commence à croire que la suppression de l'en-tête de connexion n'est pas possible. Y at-il un langage où c'est possible si c'est le cas?

Beaucoup d'appréciation pour le temps que vous prenez les gars pour regarder ça!

Merci!

+0

mise à jour Si vous utilisez une version de protocole HTTP ancienne est une option, puis vérifier cette réponse: https: // stackoverflow .com/questions/8476296/suppression-de-http-webrequest-elements –

+0

C'est la route que j'ai prise. Ca a fini par causer quelques cheveux gris de plus, mais j'ai eu exactement ce que je voulais! Je vous remercie! –

Répondre

-1

Je ne suis pas sûr de savoir comment supprimer cet en-tête spécifique, mais vous pouvez essayer d'utiliser la classe HttpClient au lieu de HttpWebRequest ou WebClient.

HttpClient class

Cette classe est plus moyen d'exécuter des requêtes HTTP en C#

+0

Génial. Je vais essayer et rendre compte! Merci! –

+0

Le seul inconvénient que je vois avec cette classe HttpClient est la façon dont vous devez utiliser des objets lors de POSTing. Je préférerais plutôt utiliser un objet List ou un objet NameValueCollection, si possible. –

+0

Vous pouvez publier des listes en utilisant la méthode 'PostAsJsonAsync' [https://msdn.microsoft.com/en-us/library/hh944521(v=vs.118).aspx] –