Question

Je voudrais passer un appel ajax à un autre serveur (même domaine et boîte, juste un port différent.) Par exemple

Ma page est

http://localhost/index.html

Je voudrais faire une requête get ajax pour :

http://localhost:7076/?word=foo

J'obtiens cette erreur :

Access to restricted URI denied (NS_ERROR_DOM_BAD_URI) 

Je sais que vous ne pouvez pas faire de requête ajax vers un domaine différent, mais il semble que cela inclue également différents ports ?existe-t-il des solutions de contournement ?

Était-ce utile?

La solution

Ayez une certaine page sur votre serveur proxy du port 80 qui demande à l'autre port.Par exemple:

http://localhost/proxy?port=7076&url=%2f%3fword%3dfoo

Notez le codage de l'URL sur la dernière valeur de l'argument de la chaîne de requête.

Autres conseils

Vous pouvez utiliser JSONP.C'est ici que vous spécifiez un rappel avec la requête, la réponse de votre requête ajax est enveloppée avec le nom de la fonction de rappel.Plutôt que d'utiliser XmlHttpRequest, vous insérez une balise dans le document HTML avec l'URL.Ensuite, lorsque la réponse est récupérée, la fonction de rappel est appelée, transmettant les données en paramètre.

Vérifie ça article de blog dehors pour un exemple

Il s'agit d'une restriction du navigateur.Tous les appels javascript doivent être effectués vers le même serveur et le même port de la maison du script.Cela nécessitera quelque chose côté serveur pour se déplacer.C'EST À DIRE.avoir le processus à localhost transmettre la demande à localhost:7076.

C'est nul, mais c'est nécessaire...Fondamentalement, ce que vous devrez faire est de proxy votre requête AJAX via un proxy local - un script / une page / quoi que ce soit côté serveur sur le même domaine sur lequel vous vous trouvez - recevez l'appel et transférez-le à l'autre serveur de ressources. côté.Il y a peut-être quelques astuces IFRAME que vous pourriez faire, mais je ne pense pas qu'elles fonctionnent très bien... cela pourrait être une erreur, cela fait un moment.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top