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.
| Polje | Opis |
|---|---|
| Metoda HTTP | Metoda zahteve HTTP za pošiljanje. Dejanje Pošlji zahtevo HTTP podpira naslednje metode:
|
| URL-naslov | URL-naslov strežnika, na katerega je poslana zahteva HTTP. |
| Glave | Par ključa in vrednosti za zahtevo HTTP. Vnesete lahko več parov ključa in vrednosti. |
| Telo | Vsebina za pošiljanje na strežnik. |
| Ob napaki odjemalca (odziv 4XX) | Ob prejemu kode odziva , ki nakazuje napako odjemalca, bo aplikacija Flow:
|
| Ob napaki strežnika (odziv 5XX ali 429) | Ob prejemu kode odziva , ki nakazuje napako strežnika, bo aplikacija Flow:
|
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.
| Koda odziva HTTP | Kako Flow obdela kodo odziva |
|---|---|
| Uspeh 2XX ali 3XX | Flow 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:
|
| 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:
- Izberite sprožilec Posodobljeno stanje izdelka, ki vam omogoča testiranje tega poteka dela s spremembo stanja izdelka.
- 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-Typein Vrednosttext/plain. - V razdelku Telo vnesite
{{product.title}}in{{product.status}}, da pošljete naslov in posodobljeno stanje izdelka iz sprožilca.
- V polje Metoda HTTP vnesite
- Aktivirajte potek dela.
- Testirajte ga s spremembo stanja izdelka, na primer iz Osnutek v Aktivno.
- 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:
Izberite sprožilec Posodobljeno stanje izdelka, ki vam omogoča testiranje tega poteka dela s spremembo stanja izdelka.
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-Typein Vrednostapplication/json.V razdelku Telo vnesite primer JSON-a za vrnitev v potek dela, na primer:
{ "productTitle": "{{product.title}}", "productStatus": "{{product.status}}" }
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 objektsendHTTPrequest, 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.parsein 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 } }
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}}
Aktivirajte potek dela.
Testirajte ga s spremembo stanja izdelka, na primer iz Osnutek v Aktivno.
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