2012-04-04 3 views
0

J'essaie d'accéder au service de repos en utilisant ajax.
Si je vais coller ce lien sur un navigateur web, il donnera un résultat comme celui-ci:

{"SessionID":"a7f58a4a-f922-47c1-8351-d2035df4968c","SourceIP":"127.0.0.1","UserID":313} 

(lien a changé pour la sécurité)
https://thisisjustasample/Rest/Authenticate/Login?username=user&password=pass123&ip=127.0.0.1

Mais je trouve pas de chance d'accéder à la lien en utilisant ajax:

Un appel de la partie 'Vue':

getdata('https://thisisjustasample/Rest/Authenticate/Login?username=user&password=pass123&ip=127.0.0.1');  

Fonction à l'intérieur du fichier js:

function getdata(url) { 
    $.ajax({ 
     url: url, 
     type: 'GET', 
     contentType: 'application/json', 
     success: function (data) { 
      if (data) { 
       showtooltip(data); 
      } 
     }, 
     error: function (xhr, ajaxOptions, error) { 
      showtooltip(xhr.status + ': ' + error); 
     } 
    }); 
} 

L'état "0" est toujours renvoyé. Et quand je vérifie ma base de données, rien n'a changé avec les données. Quel est le problème avec le code?

+0

Que voyez-vous dans 'firebug'? – gdoron

+2

Êtes-vous sûr de ne pas effectuer de demande inter-domaine? –

+0

Je ne suis pas familier avec firebug, mais je vais essayer de l'utiliser. – fiberOptics

Répondre

0

J'ai l'impression que le problème est que vous spécifiez un type de contenu de json lorsque vous ne devez pas spécifier de type de contenu, et que vos paramètres doivent faire partie des données.

$.ajax({ 
    url: "https://thisisjustasample/Rest/Authenticate/Login", 
    type: 'GET', 
    data: "username=user&password=pass123&ip=127.0.0.1", 
    success: function (data) { 
     if (data) { 
      showtooltip(data); 
     } 
    }, 
    error: function (xhr, ajaxOptions, error) { 
     showtooltip(xhr.status + ': ' + error); 
    } 
}); 
+0

Ne fonctionne pas. :( – fiberOptics

+2

Si ce javascript est exécuté sur une page de http: // ** url1 ** /some.html et que l'ajax ressemble à l'URL: "https: // ** url2 **/Rets ..., does * * url1 ** = ** url2 **? –

+0

Vous devez utiliser fiddler ou Firebug ou autre chose pour surveiller la requête et la réponse, sinon vous devez savoir ce que signifie un appel inter-domaine et si vous êtes Je ne pense pas que ce soit votre problème, mais vous devez en être sûr – suing

Questions connexes