Edee.one · Dokumentace

HTTP Request makro akce

Akce slouží pro automatizované volání předkonfigurovaných HTTP requestů s možností ukládání odpovědí do souborů.

Jednoduchá ukázka:

xml
<macro id="m.httprequestexample" name="HTTP Request example" description="">    <inputParam name="url">https://postman-echo.com/post</inputParam>    <inputParam name="httpMethod">POST</inputParam>    <inputParam name="mimeType">text/plain</inputParam>    <inputParam name="data">Data string to be sent</inputParam>    <inputParam name="destinationFile">file:${project.path}/generated/storage-internal/output.txt</inputParam>    <action name="process" method="module.httpclient:httpRequest"/></macro>

Toto makro odešle POST request na URL https://postman-echo.com/post s tělem requestu Data string to be sent a MIME typem text/plain. Tělo odpovědi uloží jako soubor /www/p_prj/.../generated/storage-internal/output.txt.

Specifikace akce

Akce podporuje pouze GET a POST metody a je dostupná pod názvem module.httpclient:httpRequest ze systémového modulu httpclient. Akce může pouze odesílat requesty a ignorovat odpovědi nebo i ukládat těla odpovědí jako soubory (např.: pro stahování souborů).

Dostupné parametry

Jednotlivé parametry se zadávají pomocí elementu inputParam přímo do makra následovně:

xml
<macro id="m.request" ...>    <inputParam name="název parametru">hodnota parametru</inputParam>    <inputParam name="název dalšího parametru">hodnota dalšího parametru</inputParam>	...

Základní parametry

Název parametruPovinnýPopisPříklad
urlanoURL adresa endpointudomain.com/get
httpMethodneHTTP metoda requestu. Podporované jsou GET a POST. Výchozí je GETGET
queryParametersneQuery parametry, které se připojí na konec URL adresy endpointu.
Parametry jsou zadávány jako mapa v jazyce SpEL.
{param1: 'value1', param2: '2'} bude zpracováno jako url?param1=value1&param2=2
headersneHlavičky HTTP requestu.
Jednotlivé hlavičky jsou zadávány jako mapa v jazyce SpEL.
{'Content-Encoding': 'gzip'}

Základní autorizace

Parametry autorizace jsou nepovinné a použijí se jen v případě, že jsou oba přítomny. Údaje jsou poté převedeny na hlavičku Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQK.

  • username
  • password

Tělo HTTP POST requestu

Název parametruPovinnýPopisPříklad
mimeTypeneMIME typ uvedeného obsahu těla HTTP requestu. Pokud není uveden, žádný se automaticky nenastaví.text/plain
dataneŘetězec, který se použije jako tělo HTTP requestu.jakýkoliv řetězec
dataFileneCesta k souboru jehož obsah bude použit jako tělo HTTP requestu. Řetězec musí být ve formátu podporovaného Springovým ResourceLoaderem a je proto možné použít nejel lokální soubory.file:/www/prj/example/content-file-to-send.json
Pokud je specifikován parametr data zároveň s dataFile, dá se přednost dataFile.

Zpracování odpovědi

Název parametruPovinnýPopisPříklad
destinationFileneCesta k souboru, do kterého se uloží tělo odpovědi HTTP requestu. Řetězec musí být ve formátu podporovaného Springovým ResourceLoaderem. Pokud soubor neexistuje, automaticky se vytvoří. Zároveň s každou novou odpovědí se přepíše. Pokud není specifikován, odpověď se ignoruje.file:/ww/prj/example/output.json