IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

Erreur : "xmlhttprequest blocked by cors policy" pour lire un xml local.


Sujet :

jQuery

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2013
    Messages : 41
    Par défaut Erreur : "xmlhttprequest blocked by cors policy" pour lire un xml local.
    Bonjour à tous. J'espère que je poste au bon endroit.

    En vue de m’entraîner à utiliser les fichiers XML, j'ai voulu essayer de me créer une sorte de page web en local. L'objectif est simple : créer un formulaire depuis une page XML. J'ai donc décidé d'utiliser JQuery pour la lecture du fichier, mais à chaque fois que je lance la page, je suis stoppé par l'erreur suivante :

    Access to XMLHttpRequest at 'file:///C:/Users/*****/Desktop/MAIN/WERK/Javascript/xmlTest/test.xml' from origin 'null' has been blocked by CORS policy: Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.
    J'ai essayé de chercher sur le net à droite à gauche, mais j'ai rien trouvé qui semblait être la solution exacte à mon soucis. Ou alors j'ai mal cherché...

    J'utilise Vivaldi comme navigateur internet.

    Voilà mon code :

    home.html
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="UTF-8">
    		<title>Formulaire</title>
    	</head>
    	<body>
    		<script src=".\node_modules\jquery\dist\jquery.js"></script>
    		<script src=".\test.js"></script>
     
    		<span id="texteJQ"></span>
    		<div id="XMLDisplay"></div>
    	</body>
     
    </html>

    Le fichier xml en question
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <?xml version="1.0" encoding="UTF-8"?>
    <form>
    	<input x="10" y="10"></input>
    	<combo x="10" y="30">
    		<elem>rouge</elem>
    		<elem>bleu</elem>
    		<elem>vert</elem>
    		<elem>jaune</elem>
    	</combo>
    	<radio x="10" y="50">
    		<elem>cercle</elem>
    		<elem>carré</elem>
    		<elem>triangle</elem>
    		<elem>rectangle</elem>
    	</radio>
    	<checkbox x="10" y="100">Outline</checkbox>
    	<button x="10" y="120">OK</button>
    </form>

    test.js (Pour le moment, je ne cherche qu'a trouver les balises "input".)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    $(function() {
      $('#texteJQ').html('Hello world. Ce texte est affiché par jQuery.');
    });
     
    $(document).ready(function()
    {
    	$.ajax( 
    	{
    		type: "GET",
    		url: "test.xml",
    		async: false,
    		dataType: "xml",
    		success: function(xml)
    		{
    			$(xml).find('form').each(function()
    			{
    				$(xml).find('input').each(function()
    				{
    					$('#texteJQ').html("test");
    					let input = document.createElement("INPUT");
    					input.setAttribute("type", "text");
    					input.setAttribute("value", "Hello !");
    				});
    			});
     
    		}
    	});
    });
    Merci d'avance pour votre aide.

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    c'est une sécurité en local.
    Ce sujet a déjà été traité sur le forum ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2013
    Messages : 41
    Par défaut
    Mais y'a pas moyen de passer outre ça ? Parce que c'est vraiment gênant.

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    Ben si tu veux que n'importe qui accède au travers d'une page web aux fichiers sur ton pc ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2013
    Messages : 41
    Par défaut
    Y'a vraiment pas de solutions alternatives ? Tout ce que je veux c'est pouvoir lire mon fichier XML qui est en local. :/

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    Oui en ouvrant des portes ... et donc des failles...
    Mais fais plutot une recherche sur ce forum avec "CROSS"
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre extrêmement actif Avatar de psychadelic
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 2 532
    Par défaut
    par défaut les navigateurs de la famille chrome refusent les opérations Ajax locales, mais il doit y avoir une option pour désactiver le truc.

    Sur Firefox les requêtes Ajax en local sont acceptées, du moment que tout ce passe en local, comme dans ton cas pour " t’entraîner "

    --
    sinon tu peux aussi utiliser NodeJS, l'intallation est simple et tu pourra utiliser le serveur http"interne" pour faire tes tests.

  8. #8
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2013
    Messages : 41
    Par défaut
    En effet sous Firefox ça marche nickel.

    Merci psychadelic !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ouverture/Chargement d'un fichier locale : blocked by CORS policy
    Par bouquelou dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 20/01/2019, 11h17
  2. erreur sur la valeur d'un élément SAX pour parser un XML
    Par katanaenmousse dans le forum Général Python
    Réponses: 2
    Dernier message: 08/04/2016, 13h28
  3. Erreur pour lire fichier XML
    Par onda47 dans le forum Android
    Réponses: 15
    Dernier message: 18/01/2013, 18h46
  4. Export requete texte -> Excel : erreur quote
    Par Sam 069 dans le forum VBA Access
    Réponses: 1
    Dernier message: 18/07/2007, 15h27
  5. Modification d'un texte dans une fenetre "d'erreur"
    Par PAUL87 dans le forum Access
    Réponses: 8
    Dernier message: 21/10/2005, 13h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo