Forum Programmation.shell Interroger une API depuis le shell

Posté par  (site Web personnel) . Licence CC By‑SA.
Étiquettes : aucune
0
30
sept.
2020

Bonjour,

Je dois, depuis un script shell, communiquer avec un site qui expose une API. Le résultat sera ensuite importé dans une base de données mysql.

J'ai fouillé sans vraiment trouvé de piste ou idée.

Comment feriez vous ?

Merci d'avance.

P.S. : depuis python c'est aussi une idée…

  • # Curl + jq

    Posté par  (site Web personnel) . Évalué à 8 (+6/-0).

    Tu peux utiliser curl pour discuter avec le site via l’API et piper par jq pour récupérer uniquement les trucs qui t’intéressent (si la réponse est du JSON).

    Maintenant, si tu as le droit à python, ce sera bien plus facile de passer par python. Trouve une bibliothèque qui permet de faire des appels HTTP, une pour causer à MySQL, et t’as plus qu’à relier les deux 🙂

    It's a fez. I wear a fez now. Fezes are cool !

    • [^] # Re: Curl + jq

      Posté par  (site Web personnel) . Évalué à 1 (+0/-0).

      Effectivement Python sera sûrement plus adapté pour faire ce genre de chose et peut-être plus facile à maintenir et faire évolué dans le temps.

      Je garde quand même la solution curl+jq sous la main.
      Merci

      Born to Kill EndUser !

  • # Décomposer

    Posté par  . Évalué à 2 (+0/-0).

    Salut,

    Décompose ton problème.

    Comme dit plus haut, une base curl+jq peut être un début. Ou du tout python.

    En cassant ton problème en petits bouts, ça sera plus facile et maintenable.

    • [^] # Re: Décomposer

      Posté par  (site Web personnel) . Évalué à 2 (+1/-0).

      J'ai deux sites web. Le premier étant le PIM Akeneo (en interne) que je peux interroger au travers de son API et de l'autre j'ai un site corporate basé sur PluXML auquel j'ai dev un plugin pour notre activité en connectant un mysql (le fichier plat n'était pas adapté).

      L'idée est que tout les x temps un export soit réalisé par un script (Python, shell…) du PIM et re-importé dans PluXML. Je ne peux pas faire un bête import/export car la structure du table est différente et il n'est pas envisageable de modifier celle du PluXML.

      En soit rien de bien compliqué, juste que je n'ai jamais fait se genre de requête en shell et avant de me lancer dans 50 millions de test et re-inventer la roue j'ai préféré demander ;)

      Born to Kill EndUser !

  • # Commentaire supprimé

    Posté par  . Évalué à 0 (+0/-1). Dernière modification le 01/10/20 à 07:41.

    Ce commentaire a été supprimé par l’équipe de modération.

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n’en sommes pas responsables.