Odoslať požiadavku HTTP
Akcia Odoslať požiadavku HTTP spája váš pracovný postup s webovým serverom alebo URL adresou a odosiela požiadavky HTTP.
Po tom, čo Flow odošle vašu požiadavku HTTP, čaká maximálne 30 sekúnd na kód odpovede HTTP. Ak Flow po 30 sekundách nedostane odpoveď, zatvorí pripojenie k vašej aplikácii. Neskôr sa požiadavku pokúsi zopakovať.
Na tejto stránke
Polia
Akcia Odoslať požiadavku HTTP obsahuje nasledujúce polia.
| Pole | Popis |
|---|---|
| Metóda HTTP | Metóda požiadavky HTTP, ktorá sa má odoslať. Akcia Odoslať požiadavku HTTP podporuje nasledujúce metódy:
|
| URL | URL adresa servera, na ktorý sa odošle požiadavka HTTP. |
| Hlavičky | Dvojica kľúča a hodnoty pre požiadavku HTTP. Je možné zadať viacero takýchto dvojíc. |
| Telo | Obsah, ktorý sa má odoslať na server. |
| Pri chybe klienta (odpoveď 4XX) | Pri prijatí kódu odpovede , ktorý označuje chybu klienta, Flow vykoná nasledujúce:
|
| Pri chybe servera (odpoveď 5XX alebo 429) | Pri prijatí kódu odpovede , ktorý označuje chybu servera, Flow vykoná nasledujúce:
|
Vrátené údaje
Ak chcete získať prístup k vráteným údajom v krokoch, ktoré nasledujú po tejto akcii, použite premennú s názvom sendHttpRequest, ktorá obsahuje všetky podrobnosti o odpovedi HTTP. Voliteľne môžete použiť akciu Spustiť kód (Run code) na analýzu hodnoty body v odpovedi, ktorú môžete použiť v nasledujúcich krokoch pracovného postupu, ako napríklad v príklade nižšie.
Ak sa akcia Odoslať požiadavku HTTP použije v jednom pracovnom postupe viackrát, k názvu premennej sa pridá číslo. Ak sa napríklad v pracovnom postupe použije akcia Odoslať požiadavku HTTP dvakrát, prvá premenná pre vrátené údaje je sendHttpRequest a druhá premenná je sendHttpRequest1. Tento názov nie je možné prispôsobiť.
Kódy odpovede
Nasledujúca tabuľka opisuje, ako aplikácia Flow spracuje kód odpovede HTTP po prijatí odpovede.
| Kód odpovede HTTP | Ako aplikácia Flow spracúva kód odpovede |
|---|---|
| Úspech 2XX alebo 3XX | Aplikácia Flow označí požiadavku HTTP ako úspešnú a vykoná nasledujúce akcie v pracovnom postupe. |
| Chyby 4XX, chyby 5XX a 429 | V závislosti od konfigurácie akcie aplikácia Flow urobí nasledujúce:
|
| Iný kód odpovede | Ak odpoveď vráti kód, ktorý nie je opísaný v tejto tabuľke, alebo ak pri opakovanom pokuse o akcie vyprší časový limit, aplikácia Flow označí požiadavku HTTP ako zlyhanú, spôsobí zlyhanie spustenia pracovného postupu a nevykoná nasledujúce akcie pracovného postupu. |
Tajomstvá
Tajomstvá slúžia na bezpečné uloženie citlivých údajov na použitie v akcii Odoslať požiadavku HTTP, ako sú prístupové tokeny alebo heslá. Tajomstvá sa vytvárajú a spravujú na stránke Flow > Nastavenia. Tajomstvo obsahuje identifikátor, hodnotu a popis. Na tajomstvo odkazujte ako na premennú Liquid (napríklad {{secrets.handle}}) alebo pomocou možnosti Pridať tajomstvo pri konfigurácii polí URL, hodnota hlavičky alebo telo. Hodnoty tajomstiev sa v rozhraní aplikácie Flow nikdy nezobrazujú a sú upravené tak, aby sa nezobrazovali v denníkoch spustení pracovného postupu.
Spúšťače
Akciu Odoslať požiadavku HTTP možno použiť v každom pracovnom postupe.
Príklady
Príklad 1: Odoslanie požiadavky HTTP do externej služby
V tomto príklade pomocou aplikácie Flow odošlete požiadavku HTTP do externej služby.
Skôr než začnete, nakonfigurujte webovú službu, ktorá prijíma požiadavky HTTP a ukladá údaje týchto požiadaviek na testovanie, napríklad Request Catcher. Pri odosielaní citlivých údajov (napríklad hesiel alebo API kľúčov) službe tretej strany buďte opatrní.
Postup:
- Vyberte spúšťač Aktualizovaný stav produktu (Product status updated), ktorý umožňuje otestovať tento pracovný postup zmenou stavu produktu.
- Pridajte akciu Odoslať požiadavku HTTP do svojho pracovného postupu a pripojte ju k spúšťaču. Potom otvorte panel konfigurácie kliknutím na krok Odoslať požiadavku HTTP .
- Do poľa Metóda HTTP zadajte
POST. - Do poľa URL zadajte adresu URL na testovanie, napríklad
https://yourFlowTest.requestcatcher.com/test. - V časti Hlavičky zadajte hlavičku s Kľúčom
Content-Typea Hodnotoutext/plain. - V časti Telo zadajte
{{product.title}}a{{product.status}}, aby sa odoslal názov a aktualizovaný stav produktu zo spúšťača.
- Do poľa Metóda HTTP zadajte
- Aktivujte pracovný postup.
- Otestujte ho zmenou stavu produktu, napríklad z Koncept na Aktívny.
- Sledujte výsledky v externej testovacej službe, ako napríklad
https://yourFlowTest.requestcatcher.com/v tomto príklade.
Príklad 2: Použitie akcie Spustiť kód na analýzu odpovede HTTP
V tomto príklade pomocou aplikácie Flow odošlete požiadavku HTTP do externej služby a použijete akciu Spustiť kód na analýzu parametra body odpovede HTTP, ktorý využijete v nasledujúcich krokoch pracovného postupu.
Skôr než začnete, vyberte si webovú službu, ktorá prijíma požiadavky HTTP a vracia údaje, napríklad Postman Echo. Pri odosielaní citlivých údajov (napríklad hesiel alebo API kľúčov) službe tretej strany buďte opatrní.
Postup:
Vyberte spúšťač Aktualizovaný stav produktu (Product status updated), ktorý umožňuje otestovať tento pracovný postup zmenou stavu produktu.
Pridajte akciu Odoslať požiadavku HTTP do svojho pracovného postupu a pripojte ju k spúšťaču. Potom otvorte panel konfigurácie kliknutím na krok Odoslať požiadavku HTTP.
Do poľa Metóda HTTP zadajte
POST.Do poľa URL zadajte adresu URL na testovanie, napríklad
https://postman-echo.com/post.V časti Hlavičky zadajte hlavičku s Kľúčom
Content-Typea Hodnotouapplication/json.V časti Telo zadajte vzorový kód JSON na vrátenie do pracovného postupu, napríklad:
{ "productTitle": "{{product.title}}", "productStatus": "{{product.status}}" }
Pridajte akciu Spustiť kód do svojho pracovného postupu a pripojte ju k akcii Odoslať požiadavku HTTP. Potom otvorte panel konfigurácie kliknutím na krok Spustiť kód.
Do poľa Definovať vstupy zahrňte parameter
bodyvrátený objektomsendHTTPrequest, napríklad:query{ sendHttpRequest { body } }Do poľa Definovať výstupy zadajte definíciu vo výstupnej schéme, napríklad:
type Output { productTitle: String! productStatus: String! }V poli Zapísať kód analyzujte odpoveď pomocou metódy
JSON.parsea uistite sa, že vrátené údaje zodpovedajú tvaru a typom definovaným vo výstupnej schéme, napríklad:export default function main(input) { const body = JSON.parse(input.sendHttpRequest.body); console.log("body is", body); return { productTitle: body.data.productTitle, productStatus: body.data.productStatus } }
Pridajte akciu Zaznamenať výstup do svojho pracovného postupu a pripojte ju k akcii Spustiť kód. Potom otvorte panel konfigurácie kliknutím na krok Spustiť kód.
Do poľa Výstup zahrňte premenné vrátené krokom Spustiť kód, napríklad:
Title from HTTP response: {{runCode.productTitle}} Status from HTTP response: {{runCode.productStatus}}
Aktivujte pracovný postup.
Otestujte ho zmenou stavu produktu, napríklad z Koncept na Aktívny.
Sledujte výsledné spustenie na stránke Flow / Nedávne spustenia a všimnite si, že hodnoty v kroku Zaznamenať výstup sa zhodujú s hodnotami vrátenými z výstupu Odoslať požiadavku HTTP.
Šablóny
Upozornenie poskytovateľa služieb vybavovania objednávok na nadchádzajúce objednávky
Odošlite požiadavku HTTP svojmu poskytovateľovi služieb vybavovania objednávok, keď sú objednávky v aplikácii Order Tagger označené značkou „Warehouse“. Zobraziť šablónu
Odosielanie nových objednávok do služby Airtable
Odošlite objednávky do služby Airtable pri vytvorení objednávky. Zobraziť šablónu
Odoslať všetky existujúce a nové produkty do Airtable
Každých 10 minút vyhľadajte produkty, ktoré ešte neboli odoslané do aplikácie Airtable (podľa štítka), a odošlite ich do nej. Zobraziť šablónu
Aktualizovať produkty v dávkach z údajov o produktoch uložených v Airtable
Aktualizujte produkty v dávkach na základe údajov o produktoch, ktoré sú uložené v aplikácii Airtable. Zobraziť šablónu
Upozorniť zákazníkov na exspirujúce darčekové karty prostredníctvom služby SendGrid
Každý deň získajte všetky darčekové karty, ktoré exspirujú o 7 dní, a odošlite zákazníkom e‑maily prostredníctvom služby SendGrid. Zobraziť šablónu
Odoslať e-mail cez SendGrid, keď zákazník zadá objednávku na vlastnú položku
Odošlite transakčný e‑mail prostredníctvom služby SendGrid, keď zákazník zadá objednávku na vlastnú položku. Zobraziť šablónu