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

API, COM et SDKs Delphi Discussion :

Composants REST, Récupérer les informations du header


Sujet :

API, COM et SDKs Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 593
    Billets dans le blog
    65
    Par défaut Composants REST, Récupérer les informations du header
    Bonjour, c'est le début du week-end et quelque chose me titille
    Quand j'utilise Rest Debugger j'ai, entre autres, ces informations

    Nom : Capture.PNG
Affichages : 354
Taille : 18,3 Ko

    quand on suit le processus jusqu'au bout, on obtient ces composants
    Nom : Capture_1.PNG
Affichages : 333
Taille : 5,5 Ko
    lequel et quelle propriété me permet de récupérer les données de l'en tête (en particulier X-WP-Total et X-WP-TotalPages)

  2. #2
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 086
    Par défaut
    TRESTResponse.Headers je dirais naïvement.
    TRESTResponseAdapter contient aussi 'Headers' comme TBindSourceAdapterField<TString> ça c'est du Live-Bindings, je suppose, je crois que tu utilises ça, moi j'ai encore jamais essayé.
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 593
    Billets dans le blog
    65
    Par défaut
    Grand naif
    Nom : Capture.PNG
Affichages : 320
Taille : 7,4 Ko
    je suis resté sur les propriétés visibles

  4. #4
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 593
    Billets dans le blog
    65
    Par défaut
    J'étais vraiment fatigué hier soir !
    Pour la petite histoire, il s'agissait d'obtenir le nombre de commandes WooCommerce enregistrées.

    requête : https://xxxxxxxx.xxx/eshop/wp-json/wc/v3/orders avec un paramètre per_page=1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    procedure TFormTest.Button2Click(Sender: TObject);
    begin
    RestRequest1.Execute;
    if RESTResponse1.Status.Success then
      begin
        memo1.Lines.Clear;
        memo1.Lines.AddStrings(RestResponse1.Headers);
        ShowMessage(memo1.Lines.Values['X-WP-Total']);
       end;
    end;
    Nom : Capture.PNG
Affichages : 321
Taille : 18,3 Ko

    NB. X-WP-Total = X-WP-TotalPages puisque le paramètre per_page=1

    Mes premiers tests pour l'application que je suis en train d'écrire (récupération des commandes Woocommerce vers notre ERP) utilise Cdata Woocommerce mais j'en suis déçu niveau temps d'exécution.
    Ce test va me permettre de vérifier si je peux faire mieux sans (du moins pour la partie récupération de la liste des commandes)

  5. #5
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 593
    Billets dans le blog
    65
    Par défaut
    Pour information, j'obtiens quasiment le même temps, en récupérant toutes les informations

    Nom : Capture.PNG
Affichages : 308
Taille : 11,5 Ko

    Conclusion : Si CData est plus "simple", en termes de nombre de composants à déposer (2 au lieu de 5 pour REST) et d'une possibilité de requêtes pour réduire le nombre de colonnes, le prix reste un frein important.

    NOTE : Si j'arrive à réduire aux colonnes souhaitées la requête REST (là je suis dépendant de l'API) je pense avoir un gain de temps significatif. Affaire à suivre

  6. #6
    Membre Expert
    Avatar de pprem
    Homme Profil pro
    MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Inscrit en
    Juin 2013
    Messages
    1 876
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 876
    Par défaut
    L'avantage c'est que tu peux aussi intervenir côté serveur en copiant le programme de l'API qui t'intéresse pour réduire son contenu. Enfin, quand on te laisse faire ce que tu as à faire côté serveur, bien entendu.

  7. #7
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 933
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 933
    Par défaut
    Citation Envoyé par SergioMaster Voir le message
    NOTE : Si j'arrive à réduire aux colonnes souhaitées la requête REST (là je suis dépendant de l'API) je pense avoir un gain de temps significatif. Affaire à suivre
    Ce n'est pas possible que je sache.

    Mais tu peux récupérer les données par bloc de 100, pourquoi les prendre une à une ? Une boucle en définissant per_page=100 et en incrémentant page jusqu'à atteindre X-WP-TotalPages. 6 requêtes à la place de 534, y'a pas photo...

    Reste à savoir pourquoi tu dois récupérer toutes les ventes. Le but en production étant plutôt de mettre en place un webhook pour être notifié en quasi temps réel des modifications.

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 10/03/2006, 14h15
  2. []récupérer les informations de idtag d'un mp3
    Par mierkool dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 08/01/2006, 11h36
  3. Récupérer les informations d'un autre site
    Par deelyth dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 02/01/2006, 09h44
  4. Réponses: 5
    Dernier message: 23/12/2005, 19h19
  5. [IdHTTP] Récupérer les informations provenant d'une serveur
    Par newbie57 dans le forum Web & réseau
    Réponses: 3
    Dernier message: 24/11/2005, 12h33

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