Pošlji zahtevo HTTP

Dejanje Pošlji zahtevo HTTP poveže vaš potek dela s spletnim strežnikom ali URL-naslovom in pošlje zahteve HTTP.

Ko aplikacija Flow pošlje vašo zahtevo HTTP, čaka največ 30 sekund na kodo odziva HTTP. Če aplikacija Flow po 30 sekundah ne prejme odziva, zapre povezavo z vašo aplikacijo in pozneje ponovi zahtevo.

Polja

Dejanje Pošlji zahtevo HTTP vsebuje naslednja polja.

Polja, uporabljena v dejanju Pošlji zahtevo HTTP.
PoljeOpis
Metoda HTTPMetoda zahteve HTTP za pošiljanje. Dejanje Pošlji zahtevo HTTP podpira naslednje metode:
  • Get – pošlje zahtevo za informacije s strežnika.
  • Delete – odstrani vir s strežnika.
  • Head – pridobi glave odziva HTTP s strežnika.
  • Options – pridobi možnosti in funkcije, ki jih podpira strežnik.
  • Patch – delno posodobi vir na strežniku.
  • Put – posodobi vir na strežniku.
  • Post – ustvari ali zamenja vir na strežniku.
URL-naslovURL-naslov strežnika, na katerega je poslana zahteva HTTP.
GlavePar ključa in vrednosti za zahtevo HTTP. Vnesete lahko več parov ključa in vrednosti.
TeloVsebina za pošiljanje na strežnik.
Ob napaki odjemalca (odziv 4XX)Ob prejemu kode odziva , ki nakazuje napako odjemalca, bo aplikacija Flow:
  • Ponovila poskus – ponavljala bo poskus do 24 ur, dokler ne bo prejela drugačne kode odziva ali dokler ne poteče čas.
  • Prekinila izvajanje – neuspešno bo zaključila izvajanje poteka dela.
  • Prezrla napako – prezrla bo napako in nadaljevala izvajanje poteka dela.
Ob napaki strežnika (odziv 5XX ali 429)Ob prejemu kode odziva , ki nakazuje napako strežnika, bo aplikacija Flow:
  • Ponovila poskus – ponavljala bo poskus do 24 ur, dokler ne bo prejela drugačne kode odziva ali dokler ne poteče čas.
  • Prekinila izvajanje – neuspešno bo zaključila izvajanje poteka dela.
  • Prezrla napako – prezrla bo napako in nadaljevala izvajanje poteka dela.

Vrnjeni podatki

Če želite dostopati do vrnjenih podatkov v korakih, ki sledijo temu dejanju, uporabite spremenljivko z imenom sendHttpRequest, ki vključuje vse podrobnosti odziva HTTP. Izbirno lahko uporabite dejanje Izvedi kodo, da razčlenite telo (body) odziva za uporabo v nadaljnjih korakih poteka dela, kot je prikazano v spodnjem primeru.

Če v posameznem poteku dela večkrat uporabite dejanje Pošlji zahtevo HTTP, se imenu spremenljivke doda številka. Na primer, v poteku dela, ki dejanje Pošlji zahtevo HTTP uporabi dvakrat, je prva spremenljivka za vrnjene podatke sendHttpRequest, druga spremenljivka pa sendHttpRequest1. Tega imena ni mogoče prilagoditi.

Kode odziva

V naslednji tabeli je opisano, kako Flow obdela kodo odziva HTTP, ko prejme odziv.

Kako Flow obdela kode odziva HTTP.
Koda odziva HTTPKako Flow obdela kodo odziva
Uspeh 2XX ali 3XXFlow označi zahtevo HTTP kot uspešno in izvede nadaljnja dejanja v poteku dela.
Napake 4XX,
napake 5XX in 429
Odvisno od konfiguracije dejanja bo Flow naredil naslednje:
  • Ponovila poskus – ponavljala bo poskus do 24 ur, dokler ne bo prejela drugačne kode odziva ali dokler ne poteče čas.
  • Prekinila izvajanje – neuspešno bo zaključila izvajanje poteka dela.
  • Prezrla napako – prezrla bo napako in nadaljevala izvajanje poteka dela.
Druga koda odzivaČe odziv vrne kodo, ki ni opisana v tej tabeli, ali pri ponovnem poskusu dejanj poteče časovna omejitev, Flow označi zahtevo HTTP kot neuspešno, prekine izvedbo poteka dela in ne izvede nadaljnjih dejanj poteka dela.

Skrivnosti

Skrivnosti se uporabljajo za varno shranjevanje občutljivih informacij za uporabo v dejanju Pošlji zahtevo HTTP, kot so žetoni za dostop ali gesla. Skrivnosti ustvarite in upravljate na strani Flow > Nastavitve. Skrivnost vsebuje uporabniško ime, vrednost in opis. Skrivnost lahko navedete kot spremenljivko Liquid (na primer {{secrets.handle}}) ali prek možnosti Dodaj skrivnost, ko konfigurirate polja URL-naslov, Vrednost glave ali Telo. Vrednosti skrivnosti niso nikoli vidne v vmesniku aplikacije Flow in so redigirane iz dnevnikov izvedb poteka dela.

Sprožilci

Dejanje Pošlji zahtevo HTTP lahko uporabite v katerem koli poteku dela.

Primeri

1. primer: Pošiljanje zahteve HTTP zunanji storitvi

V tem primeru uporabite Flow za pošiljanje zahteve HTTP zunanji storitvi.

Preden začnete, konfigurirajte spletno storitev, ki sprejema zahteve HTTP in shranjuje podatke teh zahtev za testiranje, kot je Request Catcher. Bodite previdni pri pošiljanju občutljivih podatkov (kot so gesla ali API ključi) storitvam zunanjih izvajalcev.

Koraki:

  1. Izberite sprožilec Posodobljeno stanje izdelka, ki vam omogoča testiranje tega poteka dela s spremembo stanja izdelka.
  2. Dodajte dejanje Pošlji zahtevo HTTP v svoj potek dela in ga povežite s sprožilcem. Nato odprite podokno za konfiguracijo tako, da kliknete korak Pošlji zahtevo HTTP .
    • V polje Metoda HTTP vnesite POST.
    • V polje URL-naslov vnesite URL-naslov za testiranje, na primer https://yourFlowTest.requestcatcher.com/test.
    • V razdelku Glave vnesite glavo, pri kateri ima Ključ vrednost Content-Type in Vrednost text/plain.
    • V razdelku Telo vnesite {{product.title}} in {{product.status}}, da pošljete naslov in posodobljeno stanje izdelka iz sprožilca.
  3. Aktivirajte potek dela.
  4. Testirajte ga s spremembo stanja izdelka, na primer iz Osnutek v Aktivno.
  5. Opazujte rezultate v zunanji storitvi za testiranje, kot je v tem primeru https://yourFlowTest.requestcatcher.com/.

2. primer: Uporaba dejanja Izvedi kodo za razčlenitev odziva HTTP

V tem primeru uporabite Flow za pošiljanje zahteve HTTP zunanji storitvi ter dejanje Izvedi kodo za razčlenitev telesa (body) odziva HTTP za uporabo v nadaljnjih korakih poteka dela.

Preden začnete, izberite spletno storitev, ki sprejema zahteve HTTP in vrača podatke, kot je Postman Echo. Bodite previdni pri pošiljanju občutljivih podatkov (kot so gesla ali API ključi) storitvam zunanjih izvajalcev.

Koraki:

  1. Izberite sprožilec Posodobljeno stanje izdelka, ki vam omogoča testiranje tega poteka dela s spremembo stanja izdelka.

  2. V svoj potek dela dodajte dejanje Pošlji zahtevo HTTP in ga povežite s sprožilcem. Nato odprite podokno za konfiguracijo tako, da kliknete korak Pošlji zahtevo HTTP.

    • V polje Metoda HTTP vnesite POST.

    • V polje URL-naslov vnesite URL-naslov za testiranje, na primer https://postman-echo.com/post.

    • V razdelku Glave vnesite glavo, pri kateri ima Ključ vrednost Content-Type in Vrednost application/json.

    • V razdelku Telo vnesite primer JSON-a za vrnitev v potek dela, na primer:

      {
          "productTitle": "{{product.title}}",
          "productStatus": "{{product.status}}"
      }
  3. V svoj potek dela dodajte dejanje Izvedi kodo in ga povežite z dejanjem Pošlji zahtevo HTTP. Nato odprite podokno za konfiguracijo tako, da kliknete korak Izvedi kodo.

    • V polje Določi vnose vključite body, ki ga vrne objekt sendHTTPrequest, na primer:

      query{
        sendHttpRequest {
          body
        }
      }
    • V polje Določi izhode vnesite tiste, določene v izhodni shemi, na primer:

      type Output {
        productTitle: String!
        productStatus: String!
      }
    • V polju Zapiši kodo razčlenite odziv z metodo JSON.parse in se prepričajte, da se vrnjeni podatki ujemajo z obliko in vrstami, določenimi v izhodni shemi, na primer:

      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. V svoj potek dela dodajte dejanje Zabeleži izhod in ga povežite z dejanjem Izvedi kodo. Nato odprite podokno za konfiguracijo tako, da kliknete korak Izvedi kodo.

    • V polje Izhod vključite spremenljivke, ki jih vrne korak Izvedi kodo, na primer:

      Title from HTTP response: {{runCode.productTitle}}
      Status from HTTP response: {{runCode.productStatus}}
  5. Aktivirajte potek dela.

  6. Testirajte ga s spremembo stanja izdelka, na primer iz Osnutek v Aktivno.

  7. Opazujte nastalo izvedbo na strani Flow / Nedavne izvedbe in preverite, ali se vrednosti v koraku Zabeleži izhod ujemajo z vrednostmi, vrnjenimi v izhodu dejanja Pošlji zahtevo HTTP.

Predloge

Obvestite ponudnika izpolnjevanja naročil o prihajajočih naročilih

Pošljite zahtevo HTTP svojemu ponudniku izpolnjevanja naročil, ko so naročila v aplikaciji Order Tagger označena z oznako »Warehouse«. Ogled predloge

Pošiljanje novih naročil v storitev Airtable

Pošljite naročila v storitev Airtable ob ustvarjanju naročila. Ogled predloge

Pošlji vse obstoječe in nove izdelke v Airtable

Vsakih 10 minut poiščite izdelke, ki niso bili poslani v Airtable (glede na oznako), in jih pošljite v Airtable. Ogled predloge

Posodobi izdelke v serijah iz podatkov o izdelkih, shranjenih v aplikaciji Airtable

Posodobite izdelke v serijah iz podatkov o izdelkih, ki so shranjeni v aplikaciji Airtable. Ogled predloge

Obvesti stranke o poteku darilnih kartic prek aplikacije SendGrid

Vsak dan pridobite vse darilne kartice, ki potečejo v 7 dneh, in pošljite e-pošto strankam prek aplikacije SendGrid. Ogled predloge

Pošlji e-pošto prek aplikacije SendGrid, ko stranka odda naročilo za kos po meri

Pošljite transakcijsko e-pošto prek aplikacije SendGrid, ko stranka odda naročilo za kos po meri. Ogled predloge