“405 method not allowed” - lors de l'utilisation de ASP.NET jQuery ajax POST

J'ai cherché, grâce à des charges de différents DONC des questions liées à un problème similaire, mais je n'ai pas été en mesure de trouver quelque chose de pertinent à mon problème.

J'ai le texte suivant jQuery code:

$.ajax({
   url: "Index.aspx/DeclineRequest"
   , type: 'POST'
   , contentType: 'application/json; charset=utf-8'
   , dataType: 'json'
   , data: JSON.stringify({ RequestId: requestId })
});

Je suis en utilisant un très technique similaire à publier des données sur un autre ASP.NET application web, et cela fonctionne bien. Cependant, cette application est de retourner le message d'erreur suivant:

"NetworkError: 405 Method Not Allowed - http://localhost:57255/....."

Je ne peux pas trouver quelque chose de différent à propos de ces 2 applications, donc je suis confus quant à pourquoi cela ne fonctionne pas.

Cette seule différence entre ces 2 applications qui je pense, est que celui qui travaille .NET 2.0, et celle qui n'est pas travail est .NET 3.5.

J'ai essayé d'ajouter ce qui suit à mon web.config, mais j'obtiens toujours la même erreur 405:

<webServices>
   <protocols>
     <add name="HttpPost"/>     
     <add name="HttpPostLocalhost"/>   
   </protocols>      
</webServices>

Comment puis-je résoudre ce problème?

Mise à JOUR (16:40): j'ai déplacé cette application pour IIS, et l'erreur 405 n'est plus retourné. Notre environnement de développement est cependant localhost seulement. Pourquoi en serait-il seulement d'une erreur sur localhost?

  • Pouvez-vous nous montrer votre e DeclineRequest méthode?
  • Il est similaire à stackoverflow.com/questions/7430492/...??
  • DeclineRequest méthode est tout simplement l'appel de return "Hello World" pour le moment. Je ne pense pas que c'est la question que de taper le nom de la méthode renvoie la même erreur. J'ai délibérément mal orthographiés la méthode des tests pour vérifier ce point.
InformationsquelleAutor Curt | 2012-04-19