2010-05-05 10 views
1

J'ai une fonction AJAX très basique dans JQuery:fonction succès JQuery.ajax retourne vide

$.ajax({ 
    url: "http://www.google.com", 
    dataType: "html", 
    success: function(data) { 
     alert(data); 
    } 
}); 

Mais le data est toujours une chaîne vide, peu importe ce que je vais à l'URL ... Pourquoi est-ce? Je cours ceci localement au http://localhost:3000, et j'utilise JQuery 1.4.2.

Si je fais une réponse locale, cependant, comme ceci:

$.ajax({ 
    url: "http://localhost:3000/test", 
    dataType: "html", 
    success: function(data) { 
     alert(data); 
    } 
}); 

... il retourne la page html à cette adresse. Qu'est-ce que j'oublie ici?

+0

êtes-vous connecté à Internet? (Silly, je sais ...) – aviraldg

+3

@aviraldg Comment pourrait-il être en mesure de poser cette question? –

+0

Je ne pense pas que vous pouvez le faire ... –

Répondre

4

Vous êtes en cours d'exécution dans la politique d'origine, vous empêchant de faire une demande ajax à un autre domaine, pour des raisons de sécurité.

Vous ne pouvez pas faire une demande à:

  • Un autre domaine
  • Un autre port, même sur le même domaine
  • Un domaine frère

Vous pouvez Envoyez une demande à:

  • Le même domaine
  • Un sous-domaine du domaine actuel

You can read more about it here

+0

merci! comment alors ces gens font-ils/utilisent-ils [les lecteurs RSS de JQuery comme celui-ci] (http://www.hovinne.com/blog/index.php/2007/07/15/132-jfeed-jquery-rss-atom-feed -parser-plugin)? –

+0

[a obtenu] (http://jquery-howto.blogspot.com/2009/11/cross-domain-rss-to-json-converter.html) –

+0

Quelque chose n'est pas logique: pourquoi dans ce cas n'est pas une erreur , mais un succès avec une réponse vide? – Serge

Questions connexes