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

IGN API Géoportail Discussion :

Retour JSON NULL


Sujet :

IGN API Géoportail

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2020
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2020
    Messages : 4
    Points : 1
    Points
    1
    Par défaut Retour JSON NULL
    Bonjour,

    J'utilise actuellement la clef "gratuite" pour tester l' API.

    Voilà mon lien:

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $url= "http://wxs.ign.fr/".$valid_KEY."/itineraire/rest/route.json?origin=".$origin."&destination=".$destination."&method=".$method."&graphName=".$graphName
    $json = file_get_contents($url);
     
    $parsed_json = json_decode($json);
    Évidement les variables sont ok, quand je fais un vardump($json) ou vardump($parsed_json) de la réponse, j'ai comme message NULL

    Je suis en local sur MAMP, avez vous une idée ? Avez vous besoin de plus d'informations ?

    Merci

  2. #2
    Membre habitué Avatar de xavier_dmz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2016
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2016
    Messages : 77
    Points : 156
    Points
    156
    Par défaut
    Je ne suis pas compétent en PHP, mais d'après https://www.php.net/manual/fr/functi...t-contents.php, la valeur de retour de la fonction "file_get_contents($filename)" peut être une valeur equivalente à FALSE. La valeur NULL est-elle équivalente à FALSE en PHP ?
    Si c'est le cas, le problème ne peut-il pas venir d'un échec de la requête ?
    Que donne une requête get vers "$url" par un autre moyen, tel qu'un n'avigateur web ou un client REST ?
    Développeur au sein de l'écosystème "Géoportail" de l'IGN. (Institut national de l'information géographique et forestière.)

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2020
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2020
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Lorsque je fais la demande à l’api en tapant directement l’URL dans un navigateur, j’ai bien un fichier JSON qui apparaît avec toutes les infos...

  4. #4
    Membre actif Avatar de azarzelli
    Homme Profil pro
    Analyse système
    Inscrit en
    Septembre 2020
    Messages
    136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyse système

    Informations forums :
    Inscription : Septembre 2020
    Messages : 136
    Points : 267
    Points
    267
    Par défaut
    Bonjour,

    Est-ce que le paramètre allow_url_fopen est activé sur le site ?

    Cela peut être réalisé en créant un fichier php.ini à la base du site, avec cette directive :
    Avez-vous les mêmes résultats en utilisant la méthode cURL, comme ci-après ?
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_URL,$url);
    $result=curl_exec($ch);
    curl_close($ch);
     
    vardump(json_decode($result, true));

    Cordialement,
    azarzelli

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2020
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2020
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    Oui même résultat.

    php.ini OK

    Voilà mon code:
    Code php : 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
    $GLOBALS['API'] = "GEOPORTAIL";
    $origin = "48.3775481773,7.61937437402";
    $destination = "48.5712679849,7.76752679517";
     
    //API Geoportail
    if($GLOBALS['API'] == "GEOPORTAIL"){
    $valid_KEY = "choisirgeoportail";
    $method = "DISTANCE";
    $graphName = "Voiture";
    $url= "http://wxs.ign.fr/".$valid_KEY."/itineraire/rest/route.json?origin=".$origin."&destination=".$destination."&method=".$method."&graphName=".$graphName;
    // $parsed_json = GetUrl_and_ParseJson($url);
    // var_dump($parsed_json);
     
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_URL,$url);
    $result=curl_exec($ch);
    curl_close($ch);
     
     
    var_dump(json_decode($result, true));
     
    $distance = $parsed_json->{'routes'}{0}->{'summary'}->{'lengthInMeters'};
    $temps = $parsed_json->{'routes'}{0}->{'summary'}->{'travelTimeInSeconds'};
     
    echo "DISTANCE: ".$distance."<br />";
    echo "TEMPS: ".$temps;
    }

    Cela me retourne NULL, et pas d'erreur dans error_php...

  6. #6
    Membre actif Avatar de azarzelli
    Homme Profil pro
    Analyse système
    Inscrit en
    Septembre 2020
    Messages
    136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyse système

    Informations forums :
    Inscription : Septembre 2020
    Messages : 136
    Points : 267
    Points
    267
    Par défaut
    Le site se situe-t-il derrière un proxy ?

    Pouvez-vous accéder à l'URL via la commande cURL lancée depuis un terminal ?

  7. #7
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2020
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2020
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Alors là c'est trop pour moi lol

    Je fais les tests depuis localhost sur un MAC

    Par le terminal ?

  8. #8
    Membre averti Avatar de lowzonenose
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2014
    Messages
    196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2014
    Messages : 196
    Points : 407
    Points
    407
    Par défaut info sur le transfert de la requête
    Pouvez vous afficher les info concernant le transfert de la requête :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $info = curl_getinfo($ch);
    var_dump($info);

Discussions similaires

  1. Réponses: 3
    Dernier message: 22/05/2011, 18h11
  2. ajax et retour Json
    Par sause dans le forum jQuery
    Réponses: 5
    Dernier message: 25/09/2010, 18h12
  3. Retour malloc NULL avec mémoire vive dispo
    Par Babcool dans le forum Débuter
    Réponses: 9
    Dernier message: 07/09/2010, 23h01
  4. Stocker un retour json dans une bdd
    Par Perplexe dans le forum Langage
    Réponses: 7
    Dernier message: 28/08/2009, 15h08
  5. [AJAX] retour JSON précédé de " \n\n"
    Par llaffont dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 23/10/2008, 09h21

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