Erreur avec l'Api REST

  • theodore_champion

    20 messages

    France

    :help:

    Bonjour,

    Je ne peux plus ajouter d'articles à Delcampe ce jour avec l'api rest depuis notre site web. Tout fonctionnait très bien jusqu'à présent... sans doute un changement récent. Pouvez-vous m'aider svp ?

    Voici les erreur PHP ci-dessous, provenant de ma page getCategory.php par exemple (sachant que toutes les pages utilisant l'API ont ces erreurs, y compris la page de base pour demander l'ID du vendeur)

    Warning: DOMDocument::loadXML() [domdocument.loadxml]: Opening and ending tag mismatch: hr line 5 and body in Entity, line: 6 in /xxxxxx/xxxxxxx/rest/getCategory.php on line 31

    Warning: DOMDocument::loadXML() [domdocument.loadxml]: Opening and ending tag mismatch: body line 3 and html in Entity, line: 7 in /xxxxxx/xxxxxxx/rest/getCategory.php on line 31

    Warning: DOMDocument::loadXML() [domdocument.loadxml]: Premature end of data in tag html line 1 in Entity, line: 8 in /xxxxxx/xxxxxxx/rest/getCategory.php on line 31


    Entre temps, j'ai vu qu'il fallait utiliser le protocole https, j'ai donc modifié toutes les adresses vers l'API
    en https, exemple : Lien (https)

    Et depuis cette modification, j'ai une autre erreur :

    Warning: DOMDocument::loadXML() [domdocument.loadxml]: Empty string supplied as input in /xxxxx/xxxxx/rest/getMySellerId.php on line 31

    Merci de m'aider à corriger ceci.
    Bien à vous
  • theodore_champion

    20 messages

    France

  • theodore_champion

    20 messages

    France

    Below is the part of php code which give the php warning : "Warning: DOMDocument::loadXML() [domdocument.loadxml]: Empty string supplied as input ..."

    Should i change something here ??
    Thanks a lot

    ----------------------------------------------------------------
    $postData = array( "apikey" => "xxxxxxxxxx_my_api_keyxxxxxxxxxxxxxxxxx" );
    $url = " Lien (https) ";
    $ch = curl_init();
    curl_setopt ($ch, CURLOPT_URL, $url);
    curl_setopt ($ch, CURLOPT_POST, true);
    curl_setopt ($ch, CURLOPT_POSTFIELDS, http_build_query($postData) );
    curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, false);
    curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
    $xml_response = curl_exec($ch);
    curl_close ($ch);

    $dom = new DomDocument();
    $dom->loadXML($xml_response);
    $token = $dom->getElementsByTagName( "token" )->item(0)->nodeValue;
    ----------------------------------------------------------------
  • theodore_champion

    20 messages

    France

    Got also the same php warning here :

    $url_category = " Lien (https) ";
    $ch_category = curl_init();
    curl_setopt ($ch_category, CURLOPT_URL, $url_category);
    curl_setopt ($ch_category, CURLOPT_CUSTOMREQUEST, "GET");
    curl_setopt ($ch_category, CURLOPT_FOLLOWLOCATION, false);
    curl_setopt ($ch_category, CURLOPT_RETURNTRANSFER, true);
    $xml_response_category = curl_exec($ch_category);
    curl_close ($ch_category);

    $dom_category = new DomDocument();
    $dom_category->loadXML($xml_response_category);
  • theodore_champion

    20 messages

    France

    Another thing, when i activate FOLLOWLOCATION, i got this error : Warning: curl_setopt() [function.curl-setopt]: CURLOPT_FOLLOWLOCATION cannot be activated when safe_mode is enabled or an open_basedir is set in /xxxxxxxxx/xxxxxxxxx/rest/getMySellerId.php on line 26



    Could be great to have help asap please ...
  • Compte supprimé
    Compte supprimé

    0 message

    Belgique

    Les informations ne sont plus disponibles car le compte de cet utilisateur est supprimé (Règlement RGPD)
  • theodore_champion

    20 messages

    France

    Les informations ne sont plus disponibles car le compte de cet utilisateur est supprimé (Règlement RGPD)
    • Posté le 13 mars 2020 à 08:44
    • #1111151
    Bonjour Olivier,

    Merci pour votre aide,

    print_r, ne retourne rien, je suppose normal vu que la variable semble vide
    var_dump me retourne : bool(false)

    C'est comme si ma page ne communiquait plus avec la votre
    D'ailleurs, je n'arrive même pas a afficher l'heure du serveur avec ma page de test getServerTime
    $url = " Lien (https) ";
    $ch = curl_init();
    curl_setopt ($ch, CURLOPT_URL, $url);
    curl_setopt ($ch, CURLOPT_CUSTOMREQUEST, "GET");
    curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, false);
    curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
    $xml_response = curl_exec($ch);


    PS: Peut etre cela peu vous aidez à comprendre d'ou vient ce problème, Récemment mon certificat ssl let's encrypt a été désactivé (suite à une faille annoncé par lets encrypt sur près de 200000 certificats). Mon hébergeur m'a réactive un nouveau certificat, et j'ai l'impression que c'est depuis ce moment que j'ai une problème avec votre API ... J'attends un retour de leur part également, je vous dirai ce qu'il en est.

    Merci
  • Compte supprimé
    Compte supprimé

    0 message

    Belgique

    Les informations ne sont plus disponibles car le compte de cet utilisateur est supprimé (Règlement RGPD)
  • theodore_champion

    20 messages

    France

    https : // rest .delcampe .net/
    https : // rest .delcampe .net/seller
    https : // rest .delcampe .net/category?token=".$token."&lang=F&idParent=".$id."&showOnlyLeaves=0

    etc...
  • Compte supprimé
    Compte supprimé

    0 message

    Belgique

    Les informations ne sont plus disponibles car le compte de cet utilisateur est supprimé (Règlement RGPD)
  • theodore_champion

    20 messages

    France

    Mon site est hébergé sur un serveur mutualisé, je ne peux pas exécuter un ping. Je me retourne vers notre hébergeur ce jour, car tout fonctionnait parfaitement jusqu'à présent et depuis plusieurs années. Merci de votre aide, je vous tiendrai informé
    Cordialement
  • theodore_champion

    20 messages

    France

    Bonjour,
    Voici la réponse de notre hébergeur ci dessous :

    Bonjour,

    Voici le résultat d'un curl :

    ###########################################################
    root@frontweb21:~# curl -v rest.delcampe.net
    * About to connect() to rest.delcampe.net port 80 (#0)
    * Trying 82.146.118.155... connected
    * Connected to rest.delcampe.net (82.146.118.155) port 80 (#0)
    > GET / HTTP/1.1
    > User-Agent: curl/7.21.0 (x86_64-pc-linux-gnu) libcurl/7.21.0 OpenSSL/0.9.8o zlib/1.2.3.4 libidn/1.15 libssh2/1.2.6
    > Host: rest.delcampe.net
    > Accept: */*
    >
    < HTTP/1.1 403 Forbidden
    < Server: nginx
    < Date: Mon, 16 Mar 2020 15:16:35 GMT
    < Content-Type: text/html
    < Content-Length: 162
    < Connection: keep-alive
    < Vary: Accept-Encoding
    <
    <html>
    <head><title>403 Forbidden</title></head>
    <body bgcolor="white">
    <center><h1>403 Forbidden</h1></center>
    <hr><center>nginx</center>
    </body>
    </html>
    * Connection #0 to host rest.delcampe.net left intact
    * Closing connection #0
    ###########################################################

    L'adresse IP est résolut en 82.146.118.155.
    ////////

    En espérant que ça puisse vous aidez à comprendre d’ou Peut venir le problème...
    Merci
  • Compte supprimé
    Compte supprimé

    0 message

    Belgique

    Les informations ne sont plus disponibles car le compte de cet utilisateur est supprimé (Règlement RGPD)
  • theodore_champion

    20 messages

    France

    Bonjour,
    Quel commande ou test exact doit être exécuter par l'hébergeur du coup ?
    Merci
  • Compte supprimé
    Compte supprimé

    0 message

    Belgique

    Les informations ne sont plus disponibles car le compte de cet utilisateur est supprimé (Règlement RGPD)
  • theodore_champion

    20 messages

    France

    Bonjour,

    Toujours la même erreur avec votre script: Warning: DOMDocument::loadXML(): Empty string supplied as input in /xxxxx/rest/getMySellerId2.php on line 19 / $xml_response est vide

    Recherche toujours en cours du coté de mon hébergeur. J'ai fait des tests hier sur un autre site chez un autre hébergeur et l'api a fonctionné, j'en conclus qu'à 99,99% ca provient de mon hébergeur.

    Question, a tout hasard, sur notre site est en php 5.3, cela peut-il poser problème ?
    Le site surlequel j'ai appelé l'API avec succès est en php 7

    Merci
  • Compte supprimé
    Compte supprimé

    0 message

    Belgique

    Les informations ne sont plus disponibles car le compte de cet utilisateur est supprimé (Règlement RGPD)
  • Compte supprimé
    Compte supprimé

    0 message

    Belgique

    Bonjour,

    Toujours la même erreur avec votre script: Warning: DOMDocument::loadXML(): Empty string supplied as input in /xxxxx/rest/getMySellerId2.php on line 19 / $xml_response est vide

    Recherche toujours en cours du coté de mon hébergeur. J'ai fait des tests hier sur un autre site chez un autre hébergeur et l'api a fonctionné, j'en conclus qu'à 99,99% ca provient de mon hébergeur.

    Question, a tout hasard, sur notre site est en php 5.3, cela peut-il poser problème ?
    Le site surlequel j'ai appelé l'API avec succès est en php 7

    Merci
    • Posté le 18 mars 2020 à 06:40
    • #1113452
    Les informations ne sont plus disponibles car le compte de cet utilisateur est supprimé (Règlement RGPD)
  • theodore_champion

    20 messages

    France

    Oui, c'est en cours justement, je prépare la migration MySQL 5 et php 5.6, en premier lieu. Php 7 à suivre.
  • theodore_champion

    20 messages

    France

    Je teste avec php5.6 à partir de maintenant. Toujours la même erreur. Mon hébergeur est informé et cherche de son coté.merci
  • @thomas
    Administrateur

    348 messages

    Belgique

    Je teste avec php5.6 à partir de maintenant. Toujours la même erreur. Mon hébergeur est informé et cherche de son coté.merci
    • Posté le 19 mars 2020 à 05:37
    • #1114013
    Bonjour theodore_champion,

    Où en êtes-vous dans la résolution de votre problème ? Est-ce qu'on peut encore vous être utile ?

    J'aimerais juste rappeler que pour des problèmes techniques, il est préférable d'utiliser l'anglais afin que des membres rencontrant le même problème puissent également être aidés. Merci de votre compréhension.

    Prenez bien soin de vous et de vos proches en cette période difficile,
    --
    Thomas
    Delcampe Team
  • theodore_champion

    20 messages

    France

    Bonjour,
    Oui j'ai réglé mon problème, ça venait bien de mon hébergeur, j'ai a nouveau accès à l'API.
    Merci pour votre aide

Rejoignez la communauté des collectionneurs !

S'inscrire Se connecter