11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour à tous,

J'ai sur un site un problème avec le JavaScript. Je souhaite charger des données via XMLHttpRequest depuis un autre nom de domaine (et autre serveur).
Cependant, j'ai cette erreur javascript lors de l'éxécution:
a écrit :
Erreur : [Exception... "Access to restricted URI denied" code: "1012" nsresult: "0x805303f4 (NS_ERROR_DOM_BAD_URI)" location: "http://www.site1.com/fichier.js Line: 25"]
Fichier Source : http://www.site1.com/fichier.js
Ligne : 25

Comment puis-je autoriser l'envoi / réception des données ?

Merci.
Cordialement, Samuel.
Ce n'est pas possible d'utiliser ajax pour charger des données depuis un autre serveur.

Il faut le faire en deux étapes, ton javascript appelle un fichier php (ou autre langage serveur) qui lui peut aller chercher les données sur l'autre serveur.
Arf...
Et il n'y as vraiment pas moyen de contourner cette protection comme l'on peut le faire avec le chargement de données depuis un autre serveur avec un fichier Flash (avec des "crossdomain.xml") ?
bonsoir

je fais remonter le post car en cherchant une solution au même problème je suis
également tombé sur une solution proposée sur developper.mozilla

cela fonctionne sur ff3 ... et je n'ai pas pu tester sur une autre navigateur vu que mon application
est en Xul Smiley cligne

mais cela peut toujours servir ...

ps : Access Control for Cross-site Requests est d'ailleurs un working draft du w3c
Pour une explication plus approfondie
Modifié par kzone (21 Aug 2008 - 22:37)
Chez moi, les exemples du site "http://developer.mozilla.org/en/Cross-Site_XMLHttpRequest" ne marchent pas.
Je suis sous Ubuntu Hardy Heron, Firefox 3.0.1.
Il n'y a pas de raison Smiley cligne

j'ai juste rajouter dans mon script php (coté serveur donc) l'autorisation pour mon site
soit

header('Access-Control: allow <developpez-en-svg.homelinux.org>'); 


dans un fichier servi par mon serveur Apache (pour moi dans /var/www/html/mon_fichier.php)

et je l'appelle depuis ff3 (c'est un peu spécifique puisque mon nom de domaine traité par un dyndns)

et cela fonctionne ...
Modifié par kzone (22 Aug 2008 - 19:52)