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 :

Erreur sur l'appel géocodage depuis passage en clé publique


Sujet :

IGN API Géoportail

  1. #1
    Membre éclairé Avatar de jrenard
    Homme Profil pro
    Webdesigner / développeur front-end
    Inscrit en
    Septembre 2013
    Messages
    456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Webdesigner / développeur front-end
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2013
    Messages : 456
    Points : 894
    Points
    894
    Par défaut Erreur sur l'appel géocodage depuis passage en clé publique
    Bonjour la team Géoportail

    Je viens de passer sur une clé publique essentiels (oui je m'y suis pris au dernier moment). Très facile à prendre en main, rien à dire, c'est une super avancée.
    Mais je m'aperçois que suite à ça j'ai des erreurs js sur la lib du SDK au moment l'appel à un service $OGC:OPENLS;Geocode

    En démo ici : https://www.agglo-larochelle.fr/cart...20P%C3%A9rigny

    Une idée de comment résoudre ça ?

    Merci
    Développeur Web - Agglo La Rochelle
    Anciennement pôle technique Géoportail - IGN
    Twitter : @dje_renard

  2. #2
    Membre éclairé Avatar de elias couppe
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2014
    Messages
    407
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2014
    Messages : 407
    Points : 786
    Points
    786
    Par défaut
    Salut Djé,

    J'espère que tu vas bien, et bonne année (on est encore en janvier, ca passe) !

    hmm après analyse la clé essentiels n'a pas accès à la ressource StreetAddress, tu devrais essayer avec la clé "calcul".

    Depuis le SDK 3.3.4, tu peux passer plusieurs clés à ta carte :

    - soit via le paramètre apiKey de l'objet Map (dans ton cas apiKey : "essentiels,calcul") : https://github.com/IGNF/geoportal-sd...age-dune-carte
    - soit via une autoconf locale (construite via cet outil par exemple) : https://github.com/IGNF/geoportal-sd...uration-locale

    J'espère que cela va résoudre ton problème, sinon on essayera de creuser un peu plus...

    Bon week-end à toi !

  3. #3
    Membre éclairé Avatar de jrenard
    Homme Profil pro
    Webdesigner / développeur front-end
    Inscrit en
    Septembre 2013
    Messages
    456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Webdesigner / développeur front-end
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2013
    Messages : 456
    Points : 894
    Points
    894
    Par défaut
    Salut Elias ! Comment va ?

    De mon côté tout va bien, on est toujours aussi bien à La Rochelle

    Je me suis bien douté d'une histoire de clé, mis je ne suis pas allé plus loin parce que j'avais vu dans cette page que la clé essentiels donnait accès au géocodage : https://geoservices.ign.fr/services-web-essentiels
    Je n'étais pas allé jusqu'au bas de page où sont précisées les ressources de géocodage, et en effet pas de StreetAddress

    Je teste dans la matinée et je te te confirme si c'est bon.
    Développeur Web - Agglo La Rochelle
    Anciennement pôle technique Géoportail - IGN
    Twitter : @dje_renard

  4. #4
    Membre éclairé Avatar de jrenard
    Homme Profil pro
    Webdesigner / développeur front-end
    Inscrit en
    Septembre 2013
    Messages
    456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Webdesigner / développeur front-end
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2013
    Messages : 456
    Points : 894
    Points
    894
    Par défaut
    Je dois avoir raté un truc

    J'ai fait les modifs suivantes :
    - MàJ du SDK en version 3.3.6
    - Passage du paramètre apiKey: 'essentiels, calcul' dans le Gp.Map.load
    - Modification de l'autoconf locale dans le Gp.Map.load

    Et ça ne change rien à mon problème

    https://www.agglo-larochelle.fr/cart...20P%C3%A9rigny

    Au passage, pour la récup de l'autoconf locale la page que tu m'as indiquée mouline un moment sans but. Du coup j'ai récupéré l'autoconf dynamique lors du chargement de la map et je l'ai ensuite réintroduite en autoconf locale (a priori ça fonctionne aussi comme ça, non ?)
    Développeur Web - Agglo La Rochelle
    Anciennement pôle technique Géoportail - IGN
    Twitter : @dje_renard

  5. #5
    Membre éclairé Avatar de elias couppe
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2014
    Messages
    407
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2014
    Messages : 407
    Points : 786
    Points
    786
    Par défaut
    Oups, la page était effectivement cassée depuis vendredi :/

    Normalement elle refonctionne.

    Sinon quand tu entres les clefs dans apiKey, il faut veiller à ne pas mettre d'espace après la virgule : "essentiels,calcul" (on va améliorer ça...).

    Mais en regardant ton Gp.Config, j'ai l'impression que tu as bien fait ça et que tu as les droits sur toutes les ressources nécessaire :
    Nom : Capture d’écran de 2022-01-31 11-27-32.png
Affichages : 511
Taille : 118,4 Ko

    J'essaye de regarder de manière plus approfondie dans l'après-midi, le problème se situe peut-être du côté du code d'une des APIs...

  6. #6
    Membre éclairé Avatar de elias couppe
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2014
    Messages
    407
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2014
    Messages : 407
    Points : 786
    Points
    786
    Par défaut
    Effectivement, il y avait un problème avec la fonction de centrage via geocodage du SDK, dans le cas d'un usage avec plusieurs clés.

    J'ai fait une PR rapide pour corriger ça : https://github.com/IGNF/geoportal-sdk/pull/89. N'hésite pas à essayer avec cette version.

    Cependant, avec une seule clé en entrée ("essentiels" par exemple), cela fonctionne a priori : https://jsfiddle.net/ignfgeoportail/a9Lhp3tz/

  7. #7
    Membre éclairé Avatar de jrenard
    Homme Profil pro
    Webdesigner / développeur front-end
    Inscrit en
    Septembre 2013
    Messages
    456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Webdesigner / développeur front-end
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2013
    Messages : 456
    Points : 894
    Points
    894
    Par défaut
    J'ai du mal à comprendre comment ça peut marcher avec la seule clé essentiels, puisque comme tu l'as dit elle ne propose pas la ressource StreetAddress. J'ai ré-essayé, ça ne fonctionne pas chez moi (et c'est assez logique).

    Effectivement ta PR doit résoudre le problème. Entre temps je l'avais contourné de façon un peu sale en allant taper en dur la clé calcul dans la lib du SDK pour le géocodage, et ça marche très bien
    Je passerai sur la lib propre avec ta PR à la prochaine montée de version.

    Merci pour le temps passé ! Passe le bonjour à tout le monde, l'ambiance de l'open-space me manque.
    Développeur Web - Agglo La Rochelle
    Anciennement pôle technique Géoportail - IGN
    Twitter : @dje_renard

  8. #8
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Accès cassé géoservices geocodage - CURL
    Bonjour,

    Peut être un lien avec cette discussion,

    Depuis le 1/2 et changement clé professionnelle -> essentiels ou calcul ou ...
    J'ai un 403 depuis des commandes POST CURL alors que depuis Postman ou Insomnia les mêmes requêtes POST focntionnent... Tout fonctionnait parfaitement jusqu'à ce jour.

    => notre service est donc très perturbé...

    ne fonctionne plus (php)
    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
    $request_url = 'https://wxs.ign.fr/essentiels/geoportail/ols?';
    $request_params = '<?xml version="1.0" encoding="UTF-8"?>
    <XLS
      xmlns:xls="http://www.opengis.net/xls"
      xmlns:gml="http://www.opengis.net/gml"
      xmlns="http://www.opengis.net/xls"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      version="1.2"
      xsi:schemaLocation="http://www.opengis.net/xls http://schemas.opengis.net/ols/1.2/olsAll.xsd">
              <RequestHeader/>
                <Request maximumResponses="10" methodName="LocationUtilityService" requestID="1" version="1.2">
                       <GeocodeRequest returnFreeForm="false">
                         <Address countryCode="StreetAddress">
                            <freeFormAddress>Grenoble</freeFormAddress>
    
    
    						<gml:envelope>
                                 ...
                            </gml:envelope>
                         </Address>
                       </GeocodeRequest>
              </Request>
    </XLS>';
    
    $ch = curl_init();
    curl_setopt( $ch, CURLOPT_URL, $request_url);
    curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
    curl_setopt($ch, CURLOPT_TIMEOUT, 10);
    curl_setopt($ch, CURLOPT_FAILONERROR, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/xml'));
    curl_setopt( $ch, CURLOPT_POST, 1 );
    curl_setopt( $ch, CURLOPT_POSTFIELDS, $request_params );
    $response = curl_exec( $ch );
    if(curl_errno($ch)){
        echo 'Request Error:' . curl_error($ch);
    }

    fonctionne depuis Insomnia :
    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
    POST : https://wxs.ign.fr/essentiels/geoportail/ols?
    HEADER : Content-Type: "application/xml"
    
    <?xml version="1.0" encoding="UTF-8"?>
    <XLS
      xmlns:xls="http://www.opengis.net/xls"
      xmlns:gml="http://www.opengis.net/gml"
      xmlns="http://www.opengis.net/xls"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      version="1.2"
      xsi:schemaLocation="http://www.opengis.net/xls http://schemas.opengis.net/ols/1.2/olsAll.xsd">
              <RequestHeader/>
                <Request maximumResponses="10" methodName="LocationUtilityService" requestID="1" version="1.2">
                       <GeocodeRequest returnFreeForm="false">
                         <Address countryCode="PositionOfInterest">
                            <freeFormAddress>col de l'alpe</freeFormAddress>
    
    
    						<gml:envelope>
                                 <gml:pos>44.78 5.33</gml:pos>
                                 <gml:pos>45.51 6.17</gml:pos>
                            </gml:envelope>
                         </Address>
                       </GeocodeRequest>
              </Request>
    </XLS>

  9. #9
    Membre éclairé Avatar de elias couppe
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2014
    Messages
    407
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2014
    Messages : 407
    Points : 786
    Points
    786
    Par défaut Ajouter un User-Agent à la requête
    Bonjour,

    le problème semble être différent que précédemment (ca aurait mérité un nouveau thread !) : il semble y avoir un couac sur la sécurisation des requêtes sans user-agent...

    Nous allons essayer de voir comment résoudre ce problème de manière pérenne car nous l'avons déjà rencontré sur d'autres services.

    En attendant, si vous ajoutez un user-agent (même bidon) à votre requête, normalement cela passe :

    Code curl : Sélectionner tout - Visualiser dans une fenêtre à part
    curl_setopt($ch, CURLOPT_USERAGENT, 'toto');

    En vous présentant nos excuses pour la gêne occasionnée

  10. #10
    Candidat au Club
    Homme Profil pro
    R&D
    Inscrit en
    Octobre 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : R&D
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Octobre 2015
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Merci maître Ellias Coupe !
    toto est parfait !
    Très belle assistance !

    Bien cordialement,

    Olivier

  11. #11
    Membre éclairé Avatar de elias couppe
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2014
    Messages
    407
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2014
    Messages : 407
    Points : 786
    Points
    786
    Par défaut
    Pour clore le sujet initial, le SDK en version 3.3.7 vient d'être publié et intègre la correction par geocodage du SDK avec plusieurs clefs publiques ou une autoconf locale.

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

Discussions similaires

  1. [Base de donnée] erreur sur la modification du mot passe de listener oracle9i
    Par menoran dans le forum C++Builder
    Réponses: 0
    Dernier message: 09/06/2010, 18h50
  2. Message d'erreur sur l'appel de GetMessage
    Par dnboa dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 20/02/2009, 17h56
  3. Erreur sur l'appel de la méthode ToString
    Par Emcy dans le forum C#
    Réponses: 3
    Dernier message: 31/03/2008, 13h05
  4. erreur sur un appel de sub.
    Par Many31 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 14/02/2008, 11h46
  5. Erreur sur l'appel d'une méthode
    Par Masmeta dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 01/02/2008, 14h41

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