Mettre le connecteur REST à l'épreuve | Mendix

Passer au contenu principal

Mettre le connecteur REST à l'épreuve

Image d'en-tête de l'article

Mendix 10.6 offre un nouvelle façon de consommer des services REST. Il fournit un mappage implicite et la possibilité de testez vos appels directement dans Studio Pro et regroupez les appels REST. J'en ai profité pour jouer avec le nouveau Connecteur REST en version bêtaVoici un bref aperçu de ce que j'ai trouvé.

J'ai pensé qu'un bon test du nouveau connecteur serait de consommer une API avec laquelle je n'ai jamais travaillé. Après avoir recherché des API potentielles, j'ai atterri sur Asana J'ai choisi Asana parce que mon équipe l'utilise, ce qui signifie qu'il y aurait beaucoup de données à exploiter. De plus, cela offrirait la possibilité de créer quelque chose plus tard qui pourrait donner un aperçu de la façon dont mon équipe travaille et atteint nos objectifs.

Avant de passer à l'intégration de l'API d'Asana, certaines choses m'ont immédiatement sauté aux yeux. Commençons par les passer en revue :

Une interface utilisateur simplifiée

La première chose que vous remarquerez est le design élégant. En haut de l'éditeur se trouvent vos détails de connexion, vos paramètres et vos en-têtes à gauche et les données de réponse à droite. Cette vue organisée vous permet de voir tous les détails de l'API en un seul endroit.

La deuxième chose que vous remarquerez est la possibilité d’envoyer une demande de test à l’API directement depuis Studio Pro.

Passons en revue en détail certaines de ces fonctionnalités étonnantes :

Fonctionnalités de l'interface utilisateur

Lors de l'intégration d'une API, plusieurs nouvelles fonctionnalités vous sont présentées pour faciliter la gestion de vos intégrations.

Tout d’abord, vous pouvez définir une URL de base pour la collection d’API que vous intégrez. En cliquant sur « Configuration et authentification », vous pouvez définir l’URL racine utilisée pour toutes les requêtes, qui dans le cas d’Asana est https://app.asana.com/api/1.0.

Définir une URL de base

Après avoir défini l'URL de base, elle sera préfixée pour toutes les demandes que vous ferez à partir de la collection, ce que vous pouvez voir en action dans l'écran ci-dessus.

Créer de nouvelles demandes est simple. Cliquez sur « Ajouter une demande » pour ouvrir une nouvelle demande dans l'écran. Pour naviguer entre les demandes, cliquez sur l'onglet entre « Configuration et authentification » et « Ajouter une demande ». Vous verrez un menu déroulant pour les demandes que vous avez créées.

Ajouter une demande

L'ajout d'en-têtes et de paramètres est désormais plus simple. Lorsque vous ajoutez des en-têtes, une liste d'options fréquemment utilisées vous est présentée. (Il existe toujours l'option « Personnalisé » pour tout ce qui sort de l'ordinaire.)

Nouvel en-tête HTTP

La nouvelle interface utilisateur vous permet également d'envoyer une demande de test au point de terminaison directement dans Studio Pro sans exécuter l'application. Si votre demande est correctement intégrée, la réponse s'affichera sur le côté droit sous Données de réponse.

Données de réponse

Données de réponse 2

Après une demande réussie, Studio Pro utilise les données de réponse pour générer un modèle de domaine approprié s'il n'en existe pas actuellement. Vous pouvez également recréer ce mappage de données pour la réponse à tout moment en cliquant sur « Recréer ».

Données de réponse 3

Intégration d'Asana à l'aide du nouveau connecteur

GET/Espaces de travail

Dans le cadre de mon expérience, j'ai envoyé une requête GET au point de terminaison des espaces de travail d'Asana. Ce point de terminaison renvoie l'organisation de l'utilisateur, la racine de la structure de données d'Asana. Toutes les équipes, tâches et éléments de commentaires sont contenus dans la structure de l'organisation. Nous ne pouvons pas continuer sans le GID, un identifiant global pour l'espace de travail ou l'organisation.

Cette demande nécessite un PAT d'Asana, car j'ai choisi de ne pas implémenter OAuth pour cette expérience simple. Vous pouvez en savoir plus sur la façon d'obtenir un PAT ici.

Comme il s'agit d'une requête GET, pour pouvoir envoyer le PAT dans le cadre de notre requête, nous devons définir un en-tête d'autorisation. Ensuite, nous devons envoyer le jeton avec le mot-clé « bearer » pour authentifier notre utilisateur.

Sous « En-têtes », j’ai cliqué sur « Nouveau », choisi l’option d’en-tête « Personnalisé » et défini la clé « Autorisation » avec la valeur « Porteur XXX_MyPAT_XXX ».

Nouvel en-tête HTTP

Après quelques actions seulement, j'étais prêt à tester mon travail en cliquant sur envoyer. Il a renvoyé une réponse « 200 OK » et a instantanément généré un modèle de domaine possible, que j'ai choisi de générer ensuite.

En utilisant ce GID avec mon PAT, je devrais maintenant avoir la possibilité d’intégrer le point de terminaison Créer une tâche.

POSTE/Tâche

Asana dispose d'une API très flexible et ne nécessite aucune information supplémentaire pour créer une tâche au-delà d'un PAT autorisé et du GID de l'espace de travail. Tous les autres champs peuvent être laissés vides. La tâche utilisera les valeurs par défaut pour ces champs lors de sa création.

Cependant, je continuerai à définir la chaîne « nom », ainsi que le booléen « terminé » et la chaîne « notes ».

Asana dispose d'un terrain de jeu intéressant pour vous aider à créer votre requête sur le côté droit lors de la visualisation dans leurs documents API. Je viens de l'utiliser pour créer le corps JSON de la requête. Je l'ai collé dans le champ « Corps » de Studio Pro et j'ai cliqué sur « Utiliser l'extrait JSON ». Asana a interprété les données et créé un modèle possible sous Structure du corps, que j'ai choisi d'appliquer.

Morphologie du corps

Après cela, j'étais curieux et j'ai appuyé sur envoyer. Studio Pro a immédiatement renvoyé une réponse « 201 Created ». J'ai ensuite utilisé ces données pour générer le modèle de domaine pour la réponse, qui contiendra les données pour de vrai une fois qu'elles seront implémentées.

Structure de la réponse

Il ne vous reste plus qu'à appeler ce service dans un Microflow. Vous pouvez trouver l'action « Envoyer une requête REST » dans votre boîte à outils sous « Activités d'intégration ». Après l'avoir fait glisser dans votre flux, la seule chose que vous devez faire est de sélectionner le service REST, dans notre cas la requête « CreateTask ».

Sélectionnez la requête REST

Après cela, la seule chose nécessaire est de créer les données en utilisant les entités que nous avons définies pour l'API.

Nous pouvons créer les entités normalement, en n'oubliant pas de définir les associations entre elles. Ensuite, nous fournissons simplement les données à l'action « Envoyer une requête REST ».

Envoyer une requête REST

Envoyer la requête REST 2

Conclusion

Dans l'ensemble, j'ai trouvé l'utilisation du nouveau connecteur vraiment intuitive. Bien que les intégrations soient quelque chose que je considère comme ma spécialité, même un nouveau venu dans le domaine n'aura aucun problème à apprendre à l'utiliser.

De l’autre côté de la médaille, les développeurs expérimentés dans Mendix les intégrations trouveront ici un moyen plus propre et plus efficace d'organiser et de mettre en œuvre leur travail.

Comme je l'ai mentionné, le connecteur est en version bêta. Il ne prend pas en charge les actions PUT ou DELETE pour le moment, et nous travaillons toujours à l'ajout de la fonctionnalité permettant de définir des constantes pour différents types d'authentification afin d'améliorer la flexibilité et la sécurité.

Dans l’ensemble, j’ai apprécié le nouveau connecteur et j’ai trouvé qu’il constituait un remaniement rafraîchissant de la façon dont nous travaillons avec REST dans Mendix.

Choisissez votre langue