En tant que stagiaire d'été à JMP , mon projet impliquait de travailler avec des API sur le Web.J'ai eu une courbe d'apprentissage au cours des premières semaines du projet, car j'essayais de faire fonctionner différentes API dans JMP ou si c'était même possible. J'ai pu atteindre un point de compréhension lorsque j'ai vu cette analogie dans une vidéo intitulée Qu'est-ce qu'une API RESTful ? Explication de REST & HTTP :
Imaginez que vous êtes dans un restaurant. Vous êtes le consommateur/utilisateur, la personne qui interagit pour obtenir quelque chose que vous voulez en retour de quelqu'un d'autre. Le serveur qui vient prendre votre commande peut être assimilé à une API ; le serveur viendra prendre votre commande, et prendra (envoyer) il retourne à la cuisine (ou dans ce cas, le serveur ou tout type de logiciel avec lequel l'API peut communiquer) . Lorsque la commande est terminée (ou le logiciel ou le serveur donne une réponse) , le serveur reviendra et vous donnera votre commande (répondez à votre demande) . La demande est complète !
Après avoir trouvé cette analogie, j'avais un bon modèle mental du fonctionnement des API.
L'objectif de mon projet était de créer un JMP complément qui pourrait accéder aux API REST sur le Web.J'avais besoin de montrer des exemples de travail et d'enseigner aux utilisateurs les API REST et de les aider à comprendre ce qui se passe dans les coulisses lorsqu'ils utilisent le complément.

La motivation derrière ce projet était la nouvelle fonctionnalité de HTTP Request() dans JMP 14. Les API, en particulier le style architectural de REST, sont encore considérées comme relativement nouvelles. Mon premier défi a été d'en savoir plus sur REST :
Une API REST ou RESTful est une API avec les composants et les qualités d'un style architectural REST. REST signifie Representation State Transfer et définit un protocole et un ensemble d'opérations standard pour le comportement des applications bien conçues. REST est principalement utilisé par les navigateurs et le framework pourrait être appelé "le langage d'Internet". Pour être considérée comme RESTful, une application doit avoir six attributs principaux : architecture client-serveur, absence d'état, capacité de mise en cache, être un système en couches, capacité à exécuter du code à la demande et avoir une interface uniforme. Du point de vue de l'utilisateur final, peu importe qu'une API soit RESTful ou non, mais il y a beaucoup d'avantages du côté de la programmation à être RESTful, c'est pourquoi c'est devenu la norme pour les API.
Le prochain défi que j'ai eu était avec JSL. Je ne savais pas trop comment je voulais créer une interface utilisateur pour le complément dans JSL, alors j'ai jeté un coup d'œil à Appbuilder pour JMP. J'ai décidé de travailler sur le complément en utilisant Appbuilder car je pouvais séparer le script pour le back-end du script pour le front-end (ou dans ce cas, Appbuilder) et tout organiser visuellement.
Voici à quoi ressemble le produit final :

J'ai fait des recherches et l'ai compilé dans le bouton Aide en haut, pour ceux qui veulent plus de description des différentes méthodes d'authentification. Il fournit une description de chaque type d'authentification que nous aborderons.
Vient ensuite la partie amusante. J'ai trouvé différentes API auxquelles accéder pour les utiliser dans mon complément. L'API CAT est ma préférée, je l'ai donc utilisée deux fois (une fois sans authentification et une fois avec). Chaque fois que vous cliquez sur Envoyer, un nouveau chat apparaît !


Après avoir fait fonctionner l'API Cat, j'ai trouvé plusieurs autres bons exemples et j'ai inclus ceux que je préfère dans le complément.

J'ai particulièrement aimé travailler sur l'exemple de Tumblr, car il récupère énormément d'informations (tout le blog tumblr). Je n'ai pas pu faire apparaître les informations récupérées ce joli, mais je pense qu'il fait toujours du bon travail. Pour tous ceux qui souhaitent récupérer des informations sur un autre article Tumblr, ils peuvent changer l'adresse du blog Tumblr dans le script JSL ici :

Le dernier exemple était quelque chose de spécial. Dropbox est un exemple sur lequel l'un des autres principaux développeurs avait déjà travaillé. Je voulais intégrer cet exemple dans mon complément pour essayer de le rendre aussi convivial que possible afin que toute personne sans expérience en programmation puisse l'utiliser. Le fait qu'il puisse télécharger à distance un fichier et un dossier en un clic via JMP m'étonne toujours.

J'espère que vous l'essayerez. Veuillez laisser vos questions ou commentaires.
Pour obtenir des instructions sur l'utilisation du complément lui-même, veuillez vous reporter à mon message Premiers pas avec REST .