Puis-je envoyer un vide POST HTTP WebRequest objet de C# à IIS?

Dois-je juste mettre quelques aléatoire d'ordures de données dans un WebRequest objet pour obtenir le code d'état HTTP 411 restriction sur IIS?

J'ai un HttpPost méthode d'action dans un MVC 3 app qui utilise une requête POST avec toutes les informations pertinentes passé dans la querystring (pas de corps).

[HttpPost] public ActionResult SignUp(string email) { ... }

Il a travaillé beaucoup à partir de Visual Studio web intégré hôte, la sonde Cassini. Malheureusement, une fois que le MVC code était en direct sur IIS [7.5 sur 2008 R2], le serveur est en tangage, en retour, un code d'erreur HTTP, quand j'ai frappé à partir de mon extérieur C# forme app.

Le serveur distant a retourné une erreur:
(411) Longueur Nécessaire.

Voici le code appelant:

WebRequest request = WebRequest.Create("http://somewhere.com/signup/[email protected]");
request.Method = "POST";
using (WebResponse response = request.GetResponse())
using (Stream responseStream = response.GetResponseStream())
using (StreamReader responseReader = new StreamReader(responseStream)) {
    //Do something with responseReader.ReadToEnd();
}

OriginalL'auteur patridge | 2011-05-06