2010-04-21 4 views
2

J'ai un problème étrange lorsque j'essaie d'appeler une simple méthode webservice de Jquery.Erreur lors de l'appel de webservice à partir de JQuery

Localement cela fonctionne très bien, mais pas sur mon serveur de test.

La demande jquery ressemble à ceci (ne montrant que la demande réelle et non le reste de la méthode):

$.ajax({ 
    type: "POST", 
    url: "/Service/Service.asmx/AddTab", 
    data: "tab=" + element.innerHTML, 
    success: function(msg) { 
     alert('success'); 
    } 
}); 

Quand je lance ce localement à partir du serveur de test, il fonctionne très bien, ce qui m'a demande si ce pourrait être un paramètre que j'ai manqué dans l'IIS.

Si je navigue vers le fichier .asmx et que je clique sur la méthode AddTab, j'obtiens une liste de XML SOAP 1.1 et SOAP 1.2, mais pas la requête HTTP POST. Si je navigue sur ce que je reçois localement tous les trois (SOAP 1.1, Post SOAP 1.2 et HTTP)

Le service est configuré comme suit:

[WebService(Namespace = "mynamespace")] 
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] 
[System.ComponentModel.ToolboxItem(false)] 
[ScriptService()] 
public class Service : System.Web.Services.WebService 
{ 

    [WebMethod(EnableSession=true)] 
    [ScriptMethod()] 
    public void AddTab(string tab) 
    { 
     //Some code to add a tab which evidently works locally... 
    } 

    } 

Quelqu'un a une idée de ce que je suis absent ici?

+0

Version .NET et IIS? Avez-vous essayé de définir contentType sur l'appel jQuery? – mamoo

+0

3.5, IIS 7 et oui, cela fonctionne bien localement ... et localement sur le serveur de test aussi ... avec ou sans contentType – Robban

Répondre

2

enfin réussi à résoudre en ajoutant ce qui suit à la configuration Web:

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

appearently le serveur a été bloque les requêtes entrantes provenant d'un hôte distant.

1

Assurez-vous que le fichier web.config est correctement configured.

+0

Le web.config ressemble exactement à ce qui est écrit dans ce message: / – Robban

Questions connexes