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

AJAX Discussion :

L'Objet XMLHttpRequest pour données JSON généré par Arduino


Sujet :

AJAX

  1. #1
    Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Août 2017
    Messages : 3
    Par défaut L'Objet XMLHttpRequest pour données JSON généré par Arduino
    Bonjour,

    Je cherche à lire un fichier JSON qui est sur un site web ou bien généré par un Arduino.
    Avec le code suivant je n'ai aucun problème à lire un fichier JSON qui est à la même racine que mon fichier HTML me cela ne fonctionne pas lorsque je rentre chemin url de type http://bidon.free.fr/meteo.json :
    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
     
     
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     
    <script type="text/javascript">
     
    function createXHR() 
    {
        var request = false;
            try {
                request = new ActiveXObject('Msxml2.XMLHTTP');
            }
            catch (err2) {
                try {
                    request = new ActiveXObject('Microsoft.XMLHTTP');
                }
                catch (err3) {
    		try {
    			request = new XMLHttpRequest();
    		}
    		catch (err1) 
    		{
    			request = false;
    		}
                }
            }
        return request;
    }
     
    function loadJSON(urlf) 
    {
    	var fichier=createXHR();
    	fichier.open("GET", urlf, true);
    	fichier.onreadystatechange=function() 
    	{
    		if (fichier.readyState == 4) 
    		{
    			if (fichier.status != 404) 
    			{
    				document.getElementById("zone").innerHTML = "Trouvé";
    				var data=eval("(" + fichier.responseText + ")");
    				document.getElementById("zone").innerHTML = "Température Extérieure : " + data.Temp_Ext + "<br>";
    			} 
    			else 
    			{
    				document.getElementById("zone").innerHTML = urlf + " Non trouvé";
    			}
    		}
    	}
    	fichier.send(null);
    }
     
    </script>
     
    <body bgcolor="#FFFFFF">
    <p><font size="+3">Test connexion JSON Arduino</font></p>
    <hr>
    <FORM name="ajax" method="POST" action="">
      <p>
        <INPUT type="BUTTON" value=" Cliquer pour afficher les données JSON "  ONCLICK="loadJSON('meteo.json')">
      </p>
    </FORM>
     
    <div id="zone"></div>
     
     
    <hr>
     
    </body>
     
    </html>
    Merci pour vôtre aide...

  2. #2
    Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Août 2017
    Messages : 3
    Par défaut Gestion de AcessControl
    Bonjour,

    Problème résolu, par défaut les requêtes HTML entre domaines différents ne sont pas autorisées, il suffit de gérer l'AcessControl sur le serveur Web source avec l'en-tête "Access-Control-Allow-Origin: *". Pour une meilleur sécurité, remplacer * par l'url du domaine autorisé.

Discussions similaires

  1. Réponses: 2
    Dernier message: 22/07/2014, 17h35
  2. Nettoyer les données JSON retournées par le server ?
    Par informer dans le forum jQuery
    Réponses: 2
    Dernier message: 26/06/2014, 18h59
  3. Réponses: 1
    Dernier message: 17/05/2013, 13h34
  4. Réponses: 1
    Dernier message: 19/09/2011, 09h04
  5. Réponses: 5
    Dernier message: 31/03/2010, 23h59

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