XMLHttpRequest pour lire un fichier externe
Je veux récupérer les données contenues dans un fichier texte (à partir d'une URL donnée) à l'aide de JavaScript (en cours d'exécution sur le navigateur du client).
Jusqu'à présent, j'ai essayé la méthode suivante:
var xmlhttp, text;
xmlhttp = new XMLHttpRequest();
xmlhttp.open('GET', 'http://www.example.com/file.txt', false);
xmlhttp.send();
text = xmlhttp.responseText;
Mais elle ne fonctionne que pour Firefox. Quelqu'un aurait-il des suggestions pour que cela fonctionne dans tous les navigateurs?
Grâce
OriginalL'auteur federico-t | 2012-02-06
Vous devez vous connecter pour publier un commentaire.
IL fonctionne à l'aide de
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
dans les anciennes versions d'IE. Chrome, Firefox et raisonnable les navigateurs utilisent xhrFranchement, si vous voulez la compatibilité du navigateur, utiliser jquery
son assez simple:
XMLHttpRequest cannot load http://example.com/file.txt. Origin null is not allowed by Access-Control-Allow-Origin.
. Avez-vous une idée de quoi cela peut-il se passer?c'est parce que u ne peut accéder à un fichier sur le même site que la page. Par exemple, si vous utilisez ce dans example1.com/page.php Vous ne pouvez accéder à des fichiers sur example1.com, pas n'importe où ailleurs sur l'internet. Ainsi, example.com sera bloqué. Je suppose que vous êtes en utilisant ce sur localhost. Pour donner une idée plus concrète, si la page est sur facebook.com, vous ne pouvez accéder à facebook.com /* pas twitter.com Son d'une restriction de sécurité imposée par la plupart des navigateurs
Lire sur de la Croix-Origine de la Demande de Partage.
Merci à tous les deux, même si je préfère l'jQuery approche (de sorte que je n'ai pas à apporter une solution personnalisée pour chaque navigateur)
OriginalL'auteur Somesh Mukherjee
Il était auparavant impossible de télécharger des données binaires avec l'objet XMLHttpRequest, parce qu'il ne supportait pas l'utilisation de FormData (qui, de toute façon, n'existait pas à l'époque) de l'objet. Cependant, depuis l'arrivée du nouvel objet et la deuxième version de XMLHttpRequest, cet "exploit" est maintenant facilement réalisables
C'est très simple, nous avons passé notre Fichier objet à un objet FormData et de le télécharger
Je ne pense pas que ce même répond à la question. La question était à propos de la récupération d'un fichier, ce code envoie un fichier.
OriginalL'auteur user3789934