2011-03-17 4 views
0

i sûrement une commettre une erreur très boiteux, mais ne pouvait pas savoir où ...ne peut pas obtenir la réponse du service Web

ici est ma méthode web

[WebMethod] 
     [ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Json)] 
     public int Add(int x, int y) { 

      return x + y; 

     } 

et im appeler via ajax comme ce

$.ajax({ 
      type: "GET", 
      dataType: 'json', 
      contentType: "application/json; charset=utf-8", 
      data: { x: 4, y: 5 }, 
      url: 'http://localhost:14436/Service1.asmx/Add', 
      success: function (data) { 
       alert('success'); 
       var d = $(data); 
       console.log(d);   


      } 
     }); 

le problème est que je ne peux pas obtenir les données renvoyées dans success,

en montrant son Fiddler {"d":9} mais je continue à obtenir data vide ... ce que je fais mal ici ... TIA enter image description here

Modifier

mon service web est à http://localhost:14436/Service1.asmx et mon application web de qui im ​​accéder au service Web est situé à http://localhost:3587/

alors je suppose que cela en fait une demande de domaine croisé?

+0

Vous avez défini 'contentType:" application/json; charset = utf-8 "' mais vous travaillez avec XML. –

+0

ne fonctionne toujours pas – Rafay

Répondre

1

essayez la fonction suivante:

function AjaxSucceeded(result) 
{ 
    alert(result.d); 
} 

toujours pas obtenir un résultat?
MISE À JOUR:
Vous pouvez en savoir plus sur l'emballage .d à:
http://encosia.com/2009/02/10/a-breaking-change-between-versions-of-aspnet-ajax/

Voici l'échantillon exact que ce que vous essayez d'atteindre:
http://www.joe-stevens.com/2010/01/04/using-jquery-to-make-ajax-calls-to-an-asmx-web-service-using-asp-net/

+0

je l'ai déjà essayé mais sans succès – Rafay

Questions connexes