En aquest tema, aprendrem com utilitzar APIs (Application Programming Interfaces) en el context del Llenguatge de Control (CL). Les APIs permeten que els programes es comuniquin entre ells, facilitant la integració de funcionalitats externes en els nostres scripts de CL.

Què és una API?

Una API és un conjunt de regles i protocols que permeten que diferents programes es comuniquin entre ells. Les APIs defineixen les maneres en què les peticions i respostes es realitzen entre sistemes, permetent l'accés a funcionalitats o dades d'un altre programa o servei.

Tipus d'APIs

  1. APIs de Sistema: Permeten la interacció amb el sistema operatiu.
  2. APIs de Llibreries: Proporcionen funcionalitats específiques a través de llibreries de programari.
  3. APIs Web: Permeten la comunicació amb serveis web a través de protocols com HTTP/HTTPS.

Configuració del Teu Entorn per Utilitzar APIs

Abans de començar a utilitzar APIs en els teus scripts de CL, assegura't que el teu entorn estigui correctament configurat:

  1. Accés a la Xarxa: Assegura't que el teu sistema tingui accés a la xarxa si estàs treballant amb APIs web.
  2. Llibreries Necessàries: Instal·la qualsevol llibreria o paquet necessari per a la interacció amb l'API.

Exemple Pràctic: Cridant una API Web

A continuació, veurem un exemple pràctic de com cridar una API web des d'un script de CL. Utilitzarem una API pública que retorna informació sobre el temps.

Pas 1: Definir la URL de l'API

DCL VAR(&URL) TYPE(*CHAR) LEN(256)
CHGVAR VAR(&URL) VALUE('http://api.weatherapi.com/v1/current.json?key=YOUR_API_KEY&q=London')

Pas 2: Fer la Petició HTTP

Utilitzarem una comanda de CL per fer una petició HTTP GET a l'API.

DCL VAR(&RESPONSE) TYPE(*CHAR) LEN(1024)
CALL PGM(QSYS/QHTTPSVR) PARM('GET' &URL &RESPONSE)

Pas 3: Processar la Resposta

La resposta de l'API serà en format JSON. Podem utilitzar una llibreria de JSON per processar la resposta.

DCL VAR(&TEMP) TYPE(*CHAR) LEN(10)
CALL PGM(QSYS/QJSON) PARM(&RESPONSE 'current.temp_c' &TEMP)

Pas 4: Mostrar el Resultat

Finalment, mostrarem la temperatura actual a la consola.

SNDPGMMSG MSG('La temperatura actual a Londres és: ' *CAT &TEMP *CAT ' °C')

Exercici Pràctic

Exercici 1: Cridar una API de Conversió de Moneda

  1. Objectiu: Escriu un script de CL que cridi una API de conversió de moneda i mostri el tipus de canvi entre dues monedes.
  2. API Recomanada: ExchangeRate-API
  3. Passos:
    • Defineix la URL de l'API amb les monedes que vols convertir.
    • Fes la petició HTTP GET.
    • Processa la resposta JSON per obtenir el tipus de canvi.
    • Mostra el tipus de canvi a la consola.

Solució

DCL VAR(&URL) TYPE(*CHAR) LEN(256)
CHGVAR VAR(&URL) VALUE('https://v6.exchangerate-api.com/v6/YOUR_API_KEY/latest/USD')

DCL VAR(&RESPONSE) TYPE(*CHAR) LEN(1024)
CALL PGM(QSYS/QHTTPSVR) PARM('GET' &URL &RESPONSE)

DCL VAR(&RATE) TYPE(*CHAR) LEN(10)
CALL PGM(QSYS/QJSON) PARM(&RESPONSE 'conversion_rates.EUR' &RATE)

SNDPGMMSG MSG('El tipus de canvi USD a EUR és: ' *CAT &RATE)

Errors Comuns i Consells

  1. Error de Xarxa: Assegura't que el teu sistema tingui accés a Internet.
  2. Clau d'API Invàlida: Verifica que estàs utilitzant una clau d'API vàlida.
  3. Format de Resposta: Assegura't que la resposta de l'API estigui en el format esperat (JSON, XML, etc.).

Conclusió

En aquest tema, hem après com utilitzar APIs en els nostres scripts de CL. Hem vist com fer una petició HTTP, processar la resposta i mostrar els resultats. Les APIs són una eina poderosa que ens permeten ampliar les funcionalitats dels nostres scripts de CL, integrant serveis externs de manera eficient.

En el següent tema, explorarem la comunicació de xarxa en més detall, aprenent com establir connexions i intercanviar dades entre sistemes.

© Copyright 2024. Tots els drets reservats