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.

Veiksme „Siųsti HTTP užklausą“ naudojami laukai.
LaukasAprašas
HTTP metodasHTTP užklausos siuntimo metodas. Siųsti HTTP užklausą veiksmas palaiko šiuos metodus:
  • Get – siunčia užklausą gauti informaciją iš serverio.
  • Delete – pašalina išteklių iš serverio.
  • Head – nuskaito serverio HTTP atsakymo antraštes.
  • Options – nuskaito parinktis ir funkcijas, kurias palaiko serveris.
  • Patch – iš dalies atnaujina išteklių serveryje.
  • Put – atnaujina išteklių serveryje.
  • Post – sukuria arba pakeičia išteklių serveryje.
URLServerio, į kurį siunčiama HTTP užklausa, URL.
AntraštėsHTTP užklausos rakto ir vertės pora. Galima įvesti kelias raktų ir verčių poras.
TurinysTurinys, kuris bus siunčiamas į serverį.
Kliento klaidos atveju (4XX atsakymas)Gavus atsakymo kodą , nurodantį kliento klaidą, „Flow“ atliks šiuos veiksmus:
  • Bandyti dar kartą – bandyti iš naujo iki 24 valandų, kol bus gautas kitas atsakymo kodas arba baigsis skirtasis laikas.
  • Sustabdyti – sustabdyti darbo eigos vykdymą.
  • Nepaisyti – nepaisyti klaidos ir tęsti darbo eigos vykdymą.
Serverio klaidos atveju (5XX arba 429 atsakymas)Gavus atsakymo kodą , nurodantį serverio klaidą, „Flow“ atliks šiuos veiksmus:
  • Bandyti dar kartą – bandyti iš naujo iki 24 valandų, kol bus gautas kitas atsakymo kodas arba baigsis skirtasis laikas.
  • Sustabdyti – sustabdyti darbo eigos vykdymą.
  • Nepaisyti – nepaisyti klaidos ir tęsti darbo eigos vykdymą.

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ą.

Kaip „Flow“ apdoroja HTTP atsakymų kodus.
HTTP atsakymo kodasKaip „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:
  • Bandyti dar kartą – bandyti iš naujo iki 24 valandų, kol bus gautas kitas atsakymo kodas arba baigsis skirtasis laikas.
  • Sustabdyti – sustabdyti darbo eigos vykdymą.
  • Nepaisyti – nepaisyti klaidos ir tęsti darbo eigos vykdymą.
Kitas atsakymo kodasJei 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:

  1. Pasirinkite paleidiklį Produkto būsena atnaujinta, kuris leidžia išbandyti šią darbo eigą pakeitus produkto būseną.
  2. 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ą.
  3. Aktyvuokite darbo eigą.
  4. Išbandykite jį pakeisdami produkto būseną, pavyzdžiui, iš Juodraštis į Aktyvus.
  5. 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:

  1. Pasirinkite paleidiklį Produkto būsena atnaujinta, kuris leidžia išbandyti šią darbo eigą pakeitus produkto būseną.

  2. 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}}"
      }
  3. 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 sendHTTPrequest objekto 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.parse metodą 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
        }
      }
  4. 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}}
  5. Aktyvuokite darbo eigą.

  6. Išbandykite jį pakeisdami produkto būseną, pavyzdžiui, iš Juodraštis į Aktyvus.

  7. 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ą