HTTP-kérelem küldése
A „HTTP-kérelem küldése” művelet csatlakoztatja a munkafolyamatot egy webszerverhez vagy URL-hez, és HTTP-kérelmeket küld.
Miután a Flow elküldte a HTTP-kérelmet, legfeljebb 30 másodpercig vár egy HTTP-válaszkódra. Ha a Flow 30 másodperc után sem kap választ, akkor bezárja a kapcsolatot az alkalmazással. Később újra megpróbálja a kérelmet.
Mezők
A „HTTP-kérelem küldése” művelet a következő mezőket tartalmazza.
| Mező | Leírás |
|---|---|
| HTTP-metódus | Az elküldendő HTTP-kérelem metódusa. A HTTP-kérelem küldése művelet a következő metódusokat támogatja:
|
| URL | Annak a szervernek az URL-címe, amelyre a HTTP-kérelmet elküldik. |
| Fejlécek | A HTTP-kérelem kulcs-érték párja. Több kulcs-érték pár is megadható. |
| Törzs | A szervernek küldendő tartalom. |
| Ügyfélhiba esetén (4XX válasz) | Amikor válaszkódot kap , amely ügyfélhibát jelez, a Flow a következőket teszi:
|
| Szerverhiba esetén (5XX vagy 429 válasz) | Amikor válaszkódot kap , amely szerverhibát jelez, a Flow a következőket teszi:
|
Visszaadott adatok
A műveletet követő lépésekben a visszaadott adatok eléréséhez használja a sendHttpRequest nevű változót, amely a HTTP-válasz összes részletét tartalmazza. Opcionálisan egy Kód futtatása művelet segítségével elemezheti a válasz body törzsét a későbbi munkafolyamat-lépésekben való felhasználáshoz, az alábbi példában látható módon.
Ha egy munkafolyamatban többször is szerepel a HTTP-kérés küldése művelet, akkor a változó neve egy számmal egészül ki. Például egy olyan munkafolyamatban, amely kétszer használja a HTTP-kérés küldése műveletet, a visszaadott adatok első változója a sendHttpRequest, a második változója pedig a sendHttpRequest1 lesz. Ezt a nevet nem lehet testreszabni.
Válaszkódok
Az alábbi táblázat leírja, hogy a Flow hogyan dolgozza fel a HTTP-válaszkódot, miután választ kapott.
| HTTP-válaszkód | A válaszkód Flow általi feldolgozása |
|---|---|
| 2XX vagy 3XX siker | A Flow sikeresnek jelöli a HTTP-kérelmet, és végrehajtja a munkafolyamat további műveleteit. |
| 4XX hibák, 5XX és 429 hibák | A művelet konfigurációjától függően a Flow a következőket teszi:
|
| Egyéb válaszkód | Ha a válasz a táblázatban nem szereplő kóddal tér vissza, vagy az újrapróbálkozás időtúllépéssel zárul, a Flow sikertelennek jelöli a HTTP-kérelmet és a munkafolyamat futását, és nem hajtja végre a további műveleteket. |
Titkok
A titkos kódok az érzékeny adatok, például hozzáférési tokenek vagy jelszavak biztonságos tárolására szolgálnak a HTTP-kérés küldése műveletben történő használathoz. A titkos kódokat a Flow > Beállítások oldalon hozhatja létre és kezelheti. Egy titkos kód azonosítót, értéket és leírást tartalmaz. Hivatkozzon a titkos kódra folyékony változóként (például {{secrets.handle}}), vagy használja a Titkos kód hozzáadása lehetőséget az URL, a Fejlécérték vagy a Törzs mezők konfigurálásakor. A titkos kódok értékei soha nem láthatók a Flow felületén, és a rendszer a munkafolyamat-futtatási naplókból is kitakarja azokat.
Kiváltók
A „HTTP-kérelem küldése” művelet bármely munkafolyamatban használható.
Példák
1. példa: HTTP-kérelem küldése külső szolgáltatásnak
Ebben a példában a Flow segítségével küldünk HTTP-kérelmet egy külső szolgáltatásnak.
Mielőtt elkezdené, konfiguráljon egy olyan webszolgáltatást, amely HTTP-kérelmeket fogad, és tárolja azok adatait tesztelési célból, például a Request Catcher-t. Ne feledje, hogy körültekintően kell eljárnia, amikor érzékeny adatokat (például jelszavakat vagy API-kulcsokat) küld egy harmadik féltől származó szolgáltatásnak.
Lépések:
- Válassza a Termékállapot frissítve kiváltót, amely lehetővé teszi ennek a munkafolyamatnak a tesztelését a termék állapotának módosításával.
- Adjon hozzá egy HTTP-kérelem küldése műveletet a munkafolyamathoz, és csatlakoztassa a kiváltóhoz. Ezután a konfigurációs panel megnyitásához kattintson a(z) HTTP-kérelem küldése lépésre.
- A HTTP Method mezőbe írja be a
POSTértéket. - Az URL mezőbe írja be a tesztelendő URL-t, például a következőt:
https://yourFlowTest.requestcatcher.com/test. - A Headers szakaszban adjon meg egy fejlécet
Content-Typekulccsal éstext/plainértékkel. - A Body szakaszba írja be a
{{product.title}}és{{product.status}}változókat a termék címének és frissített állapotának elküldéséhez a kiváltóból.
- A HTTP Method mezőbe írja be a
- Aktiválja a munkafolyamatot.
- Tesztelje egy termék állapotának megváltoztatásával, például Piszkozatról Aktívra.
- Figyelje meg az eredményeket a külső tesztelési szolgáltatásban, ebben a példában a
https://yourFlowTest.requestcatcher.com/címen.
2. példa: A „Run code” (kódfuttatás) használata HTTP-válasz elemzésére
Ebben a példában a Flow segítségével HTTP-kérelmet küldhet egy külső szolgáltatásnak, és egy Run code művelettel elemezheti a HTTP-válasz törzsét (body), hogy azt a munkafolyamat további lépéseiben felhasználja.
Mielőtt elkezdené, válasszon egy webszolgáltatást, amely HTTP-kéréseket fogad és adatokat ad vissza, például a Postman Echo-t. Ne feledje, hogy körültekintően járjon el, amikor bizalmas adatokat (például jelszavakat vagy API-kulcsokat) küld egy harmadik fél szolgáltatásába.
Lépések:
Válassza a Termékállapot frissítve kiváltót, amely lehetővé teszi ennek a munkafolyamatnak a tesztelését a termék állapotának módosításával.
Adjon hozzá egy HTTP-kérelem küldése műveletet a munkafolyamathoz, és csatlakoztassa a kiváltóhoz. Ezután a konfigurációs panel megnyitásához kattintson a HTTP-kérelem küldése lépésre.
A HTTP Method mezőbe írja be a
POSTértéket.Az URL mezőbe írja be a tesztelendő URL-t, például a következőt:
https://postman-echo.com/post.A Headers szakaszban adjon meg egy fejlécet
Content-Typekulccsal ésapplication/jsonértékkel.A Body szakaszba írja be a munkafolyamatnak visszaküldendő JSON-példát, például:
{ "productTitle": "{{product.title}}", "productStatus": "{{product.status}}" }
Adjon hozzá egy Run code műveletet a munkafolyamathoz, és csatlakoztassa a HTTP-kérelem küldése művelethez. Ezután a konfigurációs panel megnyitásához kattintson a Run code lépésre.
A Define inputs mezőben foglalja bele a
sendHTTPrequestobjektum által visszaadottbody-t, például:query{ sendHttpRequest { body } }A Define outputs mezőben adja meg a kimeneti sémában definiáltakat, például:
type Output { productTitle: String! productStatus: String! }A Write code mezőben elemezze a választ a
JSON.parsemetódussal, és győződjön meg arról, hogy a visszaadott adatok megfelelnek a kimeneti sémában meghatározott alaknak és típusoknak, például: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 } }
Adjon hozzá egy Log output műveletet a munkafolyamathoz, és csatlakoztassa a Run code művelethez. Ezután a konfigurációs panel megnyitásához kattintson a Run code lépésre.
Az Output mezőben foglalja bele a Run code lépés által visszaadott változókat, például:
Title from HTTP response: {{runCode.productTitle}} Status from HTTP response: {{runCode.productStatus}}
Aktiválja a munkafolyamatot.
Tesztelje egy termék állapotának megváltoztatásával, például Piszkozatról Aktívra.
Figyelje meg az eredményül kapott futtatást a Flow / Legutóbbi futtatások oldalon, és vegye észre, hogy a Log output lépésben szereplő értékek megegyeznek a HTTP-kérelem küldése kimenetéből visszaadott értékekkel.
Sablonok
Teljesítési szolgáltató értesítése a közelgő rendelésekről
HTTP-kérelem küldése a teljesítési szolgáltatónak, amikor a rendelések az Order Taggerben „Warehouse” címkét kapnak. Sablon megtekintése
Új rendelések küldése az Airtable-be
Rendelések küldése az Airtable-be, amikor egy rendelés létrejön. Sablon megtekintése
Az összes meglévő és új termék elküldése az Airtable-be
10 percenként megkeresi azokat a termékeket, amelyeket még nem küldtek el az Airtable-be (címke alapján), és elküldi őket az Airtable-be. Sablon megtekintése
Termékek frissítése tételekben az Airtable-ben tárolt termékadatokból
Termékek frissítése tételekben az Airtable-ben tárolt termékadatokból. Sablon megtekintése
Vásárlók értesítése a lejáró ajándékkártyákról a SendGrid használatával
Minden nap lekéri az összes, 7 napon belül lejáró ajándékkártyát, és e-maileket küld a vásárlóknak a SendGrid használatával. Sablon megtekintése
E-mail küldése a SendGrid használatával, amikor a vásárlók egyedi tételre adnak le rendelést
Tranzakciós e-mail küldése a SendGrid használatával, amikor egy vásárló egyedi tételre ad le rendelést. Sablon megtekintése