Siųsti HTTP užklausą
Veiksmas Siųsti HTTP užklausą prijungia jūsų darbo eigą prie žiniatinklio serverio arba URL ir siunčia HTTP užklausas.
Kai „Flow“ išsiunčia jūsų HTTP užklausą, ji laukia ne ilgiau kaip 30 sekundžių HTTP atsakymo kodo. Jei „Flow“ per 30 sekundžių negauna atsakymo, ji nutraukia ryšį su jūsų programėle. Vėliau užklausa bandoma siųsti dar kartą.
Laukai
Veiksme Siųsti HTTP užklausą yra šie laukai.
| Laukas | Aprašas |
|---|---|
| HTTP metodas | HTTP užklausos siuntimo metodas. Siųsti HTTP užklausą veiksmas palaiko šiuos metodus:
|
| URL | Serverio, į kurį siunčiama HTTP užklausa, URL. |
| Antraštės | HTTP užklausos rakto ir vertės pora. Galima įvesti kelias raktų ir verčių poras. |
| Turinys | Turinys, kuris bus siunčiamas į serverį. |
| Kliento klaidos atveju (4XX atsakymas) | Gavus atsakymo kodą , nurodantį kliento klaidą, „Flow“ atliks šiuos veiksmus:
|
| Serverio klaidos atveju (5XX arba 429 atsakymas) | Gavus atsakymo kodą , nurodantį serverio klaidą, „Flow“ atliks šiuos veiksmus:
|
Grąžinti duomenys
Norėdami pasiekti grąžintus duomenis vėlesniuose veiksmuose po šio veiksmo, naudokite kintamąjį, pavadintą sendHttpRequest, kuriame yra visa HTTP atsakymo informacija. Pasirinktinai galite naudoti veiksmą Vykdyti kodą, kad išanalizuotumėte atsakymo turinį ir galėtumėte jį naudoti vėlesniuose darbo eigos veiksmuose, kaip nurodyta toliau pateiktame pavyzdyje.
Jei veiksmas Siųsti HTTP užklausą vienoje darbo eigoje naudojamas kelis kartus, prie kintamojo pavadinimo pridedamas skaičius. Pavyzdžiui, darbo eigoje, kurioje veiksmas Siųsti HTTP užklausą naudojamas du kartus, pirmasis grąžinamų duomenų kintamasis yra sendHttpRequest, o antrasis – sendHttpRequest1. Šio pavadinimo tinkinti negalima.
Atsakymų kodai
Toliau esančioje lentelėje aprašoma, kaip „Flow“ apdoroja HTTP atsakymo kodą, gavusi atsakymą.
| HTTP atsakymo kodas | Kaip „Flow“ apdoroja atsakymo kodą |
|---|---|
| 2XX arba 3XX sėkmingas | „Flow“ pažymi HTTP užklausą kaip sėkmingą ir atlieka vėlesnius darbo eigos veiksmus. |
| 4XX klaidos, 5XX ir 429 klaidos | Atsižvelgiant į tai, kaip sukonfigūruotas veiksmas, „Flow“ atliks šiuos veiksmus:
|
| Kitas atsakymo kodas | Jei atsakyme grąžinamas kodas, neaprašytas šioje lentelėje, arba baigiasi laikas bandant atlikti veiksmus iš naujo, „Flow“ pažymi HTTP užklausą kaip nepavykusią, sustabdo darbo eigos vykdymą ir neatlieka vėlesnių darbo eigos veiksmų. |
Paslaptys
Paslaptys naudojamos saugiai laikyti jautrią informaciją, pvz., prieigos raktus arba slaptažodžius, skirtą naudoti veiksme Siųsti HTTP užklausą. Paslaptys kuriamos ir valdomos puslapyje Flow > Nustatymai. Paslaptį sudaro identifikatorius, vertė ir aprašymas. Nurodykite paslaptį kaip „Liquid“ kintamąjį (pvz., {{secrets.handle}}) arba naudodami parinktį Pridėti paslaptį, kai konfigūruojate URL, antraštės vertės arba turinio laukus. Paslapčių vertės niekada nerodomos „Flow“ sąsajoje ir yra slepiamos darbo eigos paleidimo žurnaluose.
Paleidikliai
Veiksmą Siųsti HTTP užklausą galima naudoti bet kurioje darbo eigoje.
Pavyzdžiai
1 pavyzdys: HTTP užklausos siuntimas išorinei paslaugai
Šiame pavyzdyje „Flow“ naudojama HTTP užklausai siųsti išorinei paslaugai.
Prieš pradėdami, sukonfigūruokite žiniatinklio paslaugą, kuri priima HTTP užklausas ir saugo tų užklausų duomenis testavimui, pvz., Request Catcher. Nepamirškite būti atsargūs siųsdami jautrią informaciją (pvz., slaptažodžius ar API raktus) trečiosios šalies paslaugai.
Veiksmai:
- Pasirinkite paleidiklį Produkto būsena atnaujinta, kuris leidžia išbandyti šią darbo eigą pakeitus produkto būseną.
- Pridėkite Siųsti HTTP užklausą veiksmą į savo darbo eigą ir prijunkite jį prie paleidiklio. Tada atidarykite konfigūracijos skydelį spustelėdami Siųsti HTTP užklausą veiksmą.
- Lauke HTTP metodas įveskite
POST. - Lauke URL įveskite URL, kurį naudosite testavimui, pvz.,
https://yourFlowTest.requestcatcher.com/test. - Skiltyje Antraštės įveskite antraštę, kurios Raktas yra
Content-Type, o Reikšmė –text/plain. - Skiltyje Turinys įveskite
{{product.title}}ir{{product.status}}, kad iš paleidiklio išsiųstumėte produkto pavadinimą ir atnaujintą būseną.
- Lauke HTTP metodas įveskite
- Aktyvuokite darbo eigą.
- Išbandykite jį pakeisdami produkto būseną, pavyzdžiui, iš Juodraštis į Aktyvus.
- Stebėkite rezultatus išorinėje testavimo paslaugoje, pvz., šiame pavyzdyje –
https://yourFlowTest.requestcatcher.com/.
2 pavyzdys: naudokite „Run code“, kad išanalizuotumėte HTTP atsaką
Šiame pavyzdyje naudokite „Flow“, kad nusiųstumėte HTTP užklausą išorinei paslaugai, ir Run code veiksmą, kad išanalizuotumėte HTTP atsako body dalį, kurią naudosite vėlesniuose darbo eigos veiksmuose.
Prieš pradėdami, pasirinkite žiniatinklio paslaugą, kuri priima HTTP užklausas ir grąžina duomenis, pvz., Postman Echo. Nepamirškite būti atsargūs siųsdami slaptus duomenis (pvz., slaptažodžius ar API raktus) trečiosios šalies paslaugų teikėjui.
Veiksmai:
Pasirinkite paleidiklį Produkto būsena atnaujinta, kuris leidžia išbandyti šią darbo eigą pakeitus produkto būseną.
Pridėkite „Siųsti HTTP užklausą“ veiksmą į savo darbo eigą ir prijunkite jį prie paleidiklio. Tada atidarykite konfigūracijos skydelį spustelėdami „Siųsti HTTP užklausą“ veiksmą.
Lauke HTTP metodas įveskite
POST.Lauke URL įveskite URL, kurį naudosite testavimui, pvz.,
https://postman-echo.com/post.Skiltyje Antraštės įveskite antraštę, kurios Raktas yra
Content-Type, o Reikšmė –application/json.Skiltyje Turinys įveskite pavyzdinį JSON, kuris bus grąžintas į darbo eigą, pvz.:
{ "productTitle": "{{product.title}}", "productStatus": "{{product.status}}" }
Pridėkite „Run code“ veiksmą į savo darbo eigą ir prijunkite jį prie veiksmo „Siųsti HTTP užklausą“. Tada atidarykite konfigūracijos skydelį spustelėdami „Run code“ veiksmą.
Lauke Apibrėžti įvestis įtraukite
sendHTTPrequestobjekto grąžintąbody, pvz.:query{ sendHttpRequest { body } }Lauke Apibrėžti išvestis nurodykite išvestis, kaip apibrėžta išvesties schemoje, pvz.:
type Output { productTitle: String! productStatus: String! }Lauke Rašyti kodą išanalizuokite atsaką naudodami
JSON.parsemetodą ir įsitikinkite, kad grąžinami duomenys atitinka išvesties schemoje apibrėžtą formą ir tipus, pvz.: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 } }
Pridėkite „Registruoti išvestį“ veiksmą į savo darbo eigą ir prijunkite jį prie „Run code“ veiksmo. Tada atidarykite konfigūracijos skydelį spustelėdami „Run code“ veiksmą.
Lauke Išvestis įtraukite kintamuosius, kuriuos grąžino „Run code“ veiksmas, pvz.:
Title from HTTP response: {{runCode.productTitle}} Status from HTTP response: {{runCode.productStatus}}
Aktyvuokite darbo eigą.
Išbandykite jį pakeisdami produkto būseną, pavyzdžiui, iš Juodraštis į Aktyvus.
Stebėkite gautą paleidimą puslapyje Flow / Pastarieji paleidimai ir atkreipkite dėmesį, kad „Registruoti išvestį“ veiksmo reikšmės sutampa su reikšmėmis, grąžintomis iš „Siųsti HTTP užklausą“ išvesties.
Šablonai
Praneškite savo įvykdymo paslaugų teikėjui apie būsimus užsakymus
Išsiųskite HTTP užklausą savo įvykdymo paslaugų teikėjui, kai programėlėje „Order Tagger“ užsakymai pažymimi žyma „Warehouse“. Peržiūrėti šabloną
Siųsti naujus užsakymus į „Airtable“
Siųskite užsakymus į „Airtable“, kai sukuriamas užsakymas. Peržiūrėti šabloną
Siųsti visus esamus ir naujus produktus į „Airtable“
Kas 10 minučių suraskite produktus, kurie dar nebuvo išsiųsti į „Airtable“ (pagal žymą), ir išsiųskite juos į „Airtable“. Peržiūrėti šabloną
Atnaujinti produktus partijomis pagal „Airtable“ saugomus produktų duomenis
Atnaujinkite produktus partijomis pagal „Airtable“ saugomus produktų duomenis. Peržiūrėti šabloną
Pranešti klientams apie baigiančias galioti dovanų korteles naudojant „SendGrid“
Kiekvieną dieną gaukite visas dovanų korteles, kurių galiojimas baigiasi po 7 dienų, ir siųskite klientams el. laiškus naudodami „SendGrid“. Peržiūrėti šabloną
Siųsti el. laišką naudojant „SendGrid“, kai klientai pateikia individualaus daikto užsakymą
Išsiųskite transakcinį el. laišką naudodami „SendGrid“, kai klientas pateikia individualaus daikto užsakymą. Peržiūrėti šabloną