![]() |
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. ![]() 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/~r/Delph...~4/nOgLDMq8YZM ![]() |
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