Have an amazing solution built in RAD Studio? Let us know. Looking for discounts? Visit our Special Offers page!
Nouvelles

Utilisation des API REST Apilayer de Delphi

apilayer00

Comme vous l’avez peut-√™tre vu en ligne, Idera (soci√©t√© m√®re d’Embarcadero) a r√©cemment¬†¬†acquis¬†¬†apilayer, une soci√©t√© proposant un certain nombre de micro-services API REST, allant de la g√©olocalisation d’adresses IP √† la v√©rification des e-mails et des num√©ros de t√©l√©phone, des informations financi√®res √† la m√©t√©o et au suivi des vols.¬†Vous pouvez trouver une liste des produits de la soci√©t√© sur¬†¬†https://apilayer.com/¬†.¬†Chaque produit a son propre site Web, sur lequel vous pouvez g√©n√©ralement vous connecter pour un compte avec un nombre limit√© d’appels REST gratuits.

apilayer00-1445673

Dans ce billet de blog, je ne veux pas discuter des services disponibles, mais me concentrer sur la fa√ßon de les appeler depuis RAD Studio.¬†Je n’utiliserai que deux services, l’API REST gratuite et ouverte des pays et l’un de leurs services de g√©olocalisation premium.

Utilisation de l’API des pays REST

Mon point de d√©part pour explorer les services apilayer est un service simple et totalement gratuit, disponible avec une documentation compl√®te sur¬†¬†https://github.com/apilayer/restcountries¬†.¬†Pour faire une premi√®re exp√©rience, j’ai utilis√© le d√©bogueur REST pour interroger le service, en utilisant le nom de point de terminaison et en passant √©ventuellement un param√®tre, comme vous pouvez le voir ci-dessous (avec la valeur de param√®tre ¬ęunited¬Ľ):

apilayer01

Une fois que les donn√©es semblent correctes dans le d√©bogueur REST, vous pouvez simplement utiliser le bouton Copier les composants pour cr√©er un instantan√© de la configuration du composant de la biblioth√®que cliente REST requis pour cr√©er une application.¬†Maintenant, cr√©ez une application Delphi ou C ++ dans RAD Studio, soit VCL ou FMX, et collez les composants dans un module de donn√©es – ou un formulaire si vous √™tes paresseux.¬†Dans ce cas, j’ai utilis√© Delphi et VCL‚Ķ et j’√©tais paresseux.

J’ai d√©pos√© un panneau avec une modification et un bouton et DBGrid (plus un composant DataSource), les ai c√Ębl√©s et ex√©cut√© la RESTRequest au moment de la conception pour obtenir un aper√ßu des donn√©es:

apilayer02

Le code de filtrage est très simple:

procedure TForm43.Button1Click (Sender: TObject);
begin
if Edit1.Text = ‚ÄĚthen
RESTRequest1.Resource: = ‘name’
else
RESTRequest1.Resource: = ‘name /’ + Edit1.Text;
RESTRequest1.Execute;
fin;

Le seul autre changement que j’ai d√Ľ faire √©tait de changer la propri√©t√© TypesMode du composant RESTResponseDataSetAdapter1 en JSONOnly, car une partie de l’analyse des donn√©es essayait par erreur de convertir un texte li√© au fuseau horaire en une date, ce qui a entra√ģn√© une exception.

Inverser le g√©ocodage avec l’API Position Stack

Ensuite, j’ai tent√© d’utiliser le niveau gratuit d’une API payante,¬†¬†https://positionstack.com/¬†.¬†Ce service offre des services de g√©ocodage direct et inverse, de cartographie, etc.¬†Ici, par exemple, j’ai fait un simple g√©ocodage ¬ęen avant¬Ľ, en fournissant une adresse et en lisant la latitude, la longitude et d’autres informations locales dans le d√©bogueur REST.¬†Pour obtenir le r√©sultat tabulaire, j’ai d√Ľ configurer la racine JSON √† l’aide de l’¬†¬†√©l√©ment de¬†donn√©es¬†¬†:

apilayer03

Dans ce cas, vous devez vous inscrire pour une cl√© de d√©veloppeur et la saisir en tant que param√®tre suppl√©mentaire pour la demande.¬†(Vous pouvez envisager d’encoder cette cl√© plut√īt que de l’avoir sous forme de cha√ģne simple dans l’application finale.)

Maintenant, de la m√™me mani√®re que ce que j’ai fait ci-dessus, nous pouvons copier les composants dans une application RAD Studio et avoir une application FMX de g√©ocodage pr√™te √† l’emploi, cette fois bas√©e sur les liaisons en direct.¬†Cette application peut √©galement afficher des donn√©es au moment de la conception, dans ce cas, la latitude et la longitude de ma ville (plus une autre ville du m√™me nom aux √Čtats-Unis):

apilayer04

Conclusion

Tirer parti des API de micro-service pour le d√©veloppement d’applications, √† la fois de bureau et mobiles, peut vraiment acc√©l√©rer la cr√©ation et le d√©ploiement de fonctionnalit√©s innovantes, et les avoir sur une infrastructure √©volutive en m√™me temps.¬†Je suis impatient de tirer parti de plus de¬†¬†services apilayer¬†¬†et de vous encourager √† jeter un coup d’Ňďil √† ce qu’ils peuvent offrir pour vos projets actuels ou futurs.


Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.
Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

Get some love as Delphi turns 26

Leave a Reply

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

IN THE ARTICLES