Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Delphi-News aus aller Welt (https://www.delphipraxis.net/58-delphi-news-aus-aller-welt/)
-   -   Utilizar los componentes REST con Delphi (https://www.delphipraxis.net/208606-utilizar-los-componentes-rest-con-delphi.html)

DP News-Robot 25. Aug 2021 12:20

Utilizar los componentes REST con Delphi
 
En esta ocasión veremos cómo hacer llamadas REST utilizando los componentes que nos proporciona Delphi 10.4.1

Desde el menú Tools, accedemos a la opción REST Debugger, y se abrirá un programa desarrollado por Embarcadero realizado para simplificar las consultas web y ver, entre otras cosas el header, body, los datos en formato tabular, cuando se hacen llamadas a una API. En cierto modo es parecido al funcionamiento del comando curl en Linux.







En este caso voy a hacer una consulta a la API que nos proporciona la NASA para ver la foto del día.

https://api.nasa.gov/planetary/apod?...ate=2021-08-15

En el campo URL pondremos la URL anterior, y dado que la consulta devuelve el resultado en formato JSON, en el Content-type seleccionaremos application/json

Pulsamos el botón "Send Request" y si todo ha ido bien en la parte inferior de la ventana, etiquetada con el nombre "Response" veremos la respuesta del Servidor (Headers, Body y Tabular Data)







Pulsamos el botón "Copy components", para copiar en el clipboard los componentes (RestClient, RestRequest y RestResponse)










A continuación tenemos que crear una nueva aplicación:


Empezamos como siempre desde File -New - MultiDevice Application y añadimos 2 componentes: un tButton y un tMemo

Ahora tenemos que pegar los componentes anteriores sobre la vista de formulario de nuestro programa pulsando Ctrl+V, y quedará como sigue:







Añadimos a la ventana del Form un TButton y un TMemo, que contendrá el archivo JSON devuelto por la API

Sobre el form, con el botón derecho del ratón, activamos el menú "Bind Visually..." para que se abra el "LiveBindings Designer"


y unimos con el ratón los campos JSONText y Text (del tMemo) como muestra la figura:








En el botón insertamos la siguiente línea de código:

PROCEDURE TForm1.Button1Click(Sender: TObject);
BEGIN
BEGIN
RESTRequest1.Execute;
END;
END;



Ejecutamos el programa y pulsamos el botón "Iniciar" del Form y nos mostrará la información que nos ha devuelto la llamada a la API






Si no quieren utilizar el LiveBindings Designer, tendrían que poner el siguiente código en el botón INICIAR.PROCEDURE TForm1.Button1Click(Sender: TObject);
BEGIN
VAR
jValue: TJSONValue;
BEGIN
RESTRequest1.Execute;
jValue := RESTResponse1.JSONValue;
Memo1.Text := jValue.ToString;
END;
END;

------------

En los siguientes Post les indicaré como dar formato tabular al JSON para que se pueda visualizar desde un DataSet, desde un StringGrid o utilizando una tabla en memoria para hacer consultas.




Suscribirse :
http://feeds.feedburner.com/~ff/Delp...?d=yIl2AUoC8zA http://feeds.feedburner.com/~ff/Delp...?d=dnMXMwOfBR0 http://feeds.feedburner.com/~ff/Delp...?d=qj6IDK7rITs http://feeds.feedburner.com/~ff/Delp...?d=7Q72WNTAKBA
http://feeds.feedburner.com/~r/Delph...~4/nOgLDMq8YZM

Weiterlesen...


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:06 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz