Slanje HTTP zahteva
Akcija Slanje HTTP zahteva povezuje vaš tok posla sa veb-serverom ili URL-om i šalje HTTP zahteve.
Kada Flow pošalje vaš HTTP zahtev, čeka maksimalno 30 sekundi na kôd HTTP odgovora. Ako Flow ne dobije odgovor posle 30 sekundi, zatvara vezu sa vašom aplikacijom. Kasnije će ponovo pokušati da pošalje zahtev.
Na ovoj stranici
Polja
Akcija Slanje HTTP zahteva sadrži sledeća polja.
| Polje | Opis |
|---|---|
| HTTP metoda | Metoda HTTP zahteva za slanje. Akcija Slanje HTTP zahteva podržava sledeće metode:
|
| URL | URL adresa servera na koji se šalje HTTP zahtev. |
| Zaglavlja | Par ključa i vrednosti za HTTP zahtev. Može se uneti više parova ključ-vrednost. |
| Telo | Sadržaj koji se šalje na server. |
| U slučaju klijentske greške (odgovor 4XX) | Kada primi kôd odgovora koji ukazuje na klijentsku grešku, Flow će:
|
| U slučaju serverske greške (odgovor 5XX ili 429) | Kada primi kôd odgovora koji ukazuje na serversku grešku, Flow će:
|
Vraćeni podaci
Da biste pristupili vraćenim podacima u koracima koji slede nakon ove akcije, koristite promenljivu pod imenom sendHttpRequest, koja obuhvata sve detalje HTTP odgovora. Opciono, koristite akciju Pokretanje koda da biste raščlanili body odgovora radi korišćenja u narednim koracima toka posla, kao u primeru ispod.
Ako se akcija Slanje HTTP zahteva koristi više puta u jednom toku posla, imenu promenljive se dodaje broj. Na primer, u toku posla koji koristi akciju Slanje HTTP zahteva dva puta, prva promenljiva za vraćene podatke je sendHttpRequest, a druga promenljiva je sendHttpRequest1. Ovo ime se ne može prilagoditi.
Kôdovi odgovora
U sledećoj tabeli je opisano kako Flow obrađuje HTTP kôd odgovora nakon što primi odgovor.
| HTTP kôd odgovora | Kako Flow obrađuje kôd odgovora |
|---|---|
| 2XX ili 3XX Uspeh | Flow označava HTTP zahtev kao uspešan i obavlja naredne radnje u toku posla. |
| 4XX greške, 5XX i 429 greške | U zavisnosti od toga kako je radnja konfigurisana, Flow će:
|
| Drugi kôd odgovora | Ako odgovor vrati kôd koji nije opisan u ovoj tabeli ili istekne vreme pri ponovnom pokušaju obavljanja radnji, Flow označava HTTP zahtev kao neuspešan, prekida izvršavanje toka posla i ne preduzima naredne radnje u toku posla. |
Tajne
Tajne se koriste za bezbedno skladištenje osetljivih informacija za upotrebu u radnji Send HTTP request, kao što su pristupni tokeni ili lozinke. Tajne se kreiraju i njima se upravlja na stranici Flow > Podešavanja. Tajna sadrži identifikator, vrednost i opis. Referencirajte tajnu kao Liquid promenljivu (kao što je {{secrets.handle}}) ili u okviru opcije Add secret kada konfigurišete polja URL, Header value ili Body. Vrednosti tajne nikada nisu vidljive u Flow interfejsu i redigovane su iz evidencija o izvršavanju toka posla.
Okidači
Radnja Send HTTP request može da se koristi u bilo kom toku posla.
Primeri
Primer 1: Slanje HTTP zahteva spoljnoj usluzi
U ovom primeru, koristite Flow da pošaljete HTTP zahtev spoljnoj usluzi.
Pre nego što počnete, konfigurišite veb uslugu koja prima HTTP zahteve i skladišti podatke tih zahteva za testiranje, kao što je Request Catcher. Imajte na umu da treba da budete oprezni prilikom slanja osetljivih podataka (kao što su lozinke ili API ključevi) uslugama treće strane.
Koraci:
- Izaberite okidač Product status updated, koji vam omogućava da testirate ovaj tok posla promenom statusa proizvoda.
- Dodajte radnju Send HTTP Request u tok posla i povežite je sa okidačem. Zatim otvorite tablu za konfiguraciju tako što ćete kliknuti na korak Send HTTP Request .
- U polje HTTP Method unesite
POST. - U polje URL unesite URL za testiranje, kao što je
https://yourFlowTest.requestcatcher.com/test. - U odeljku Headers unesite zaglavlje sa poljem Key koje je
Content-Typei poljem Value koje jetext/plain. - U odeljku Body unesite
{{product.title}}i{{product.status}}da pošaljete naslov i ažurirani status proizvoda iz okidača.
- U polje HTTP Method unesite
- Aktivirajte tok posla.
- Testirajte ga promenom statusa na proizvodu, kao što je sa Nacrt na Aktivan.
- Pogledajte rezultate u spoljnoj usluzi za testiranje, kao što je
https://yourFlowTest.requestcatcher.com/u ovom primeru.
Primer 2: Korišćenje radnje Run code za raščlanjivanje HTTP odgovora
U ovom primeru, koristite Flow da pošaljete HTTP zahtev spoljnoj usluzi i radnju Run code da raščlanite body HTTP odgovora za upotrebu u narednim koracima toka posla.
Pre nego što počnete, izaberite veb uslugu koja prima HTTP zahteve i vraća podatke, kao što je Postman Echo. Imajte na umu da treba da budete oprezni prilikom slanja osetljivih podataka (kao što su lozinke ili API ključevi) uslugama treće strane.
Koraci:
Izaberite okidač Product status updated, koji vam omogućava da testirate ovaj tok posla promenom statusa proizvoda.
Dodajte radnju Send HTTP Request u tok posla i povežite je sa okidačem. Zatim otvorite tablu za konfiguraciju tako što ćete kliknuti na korak Send HTTP Request.
U polje HTTP Method unesite
POST.U polje URL unesite URL za testiranje, kao što je
https://postman-echo.com/post.U odeljku Headers unesite zaglavlje sa poljem Key koje je
Content-Typei poljem Value koje jeapplication/json.U odeljku Body unesite primer JSON formata koji će se vratiti u tok posla, kao što je:
{ "productTitle": "{{product.title}}", "productStatus": "{{product.status}}" }
Dodajte radnju Run code u tok posla i povežite je sa radnjom Send HTTP request. Zatim otvorite tablu za konfiguraciju tako što ćete kliknuti na korak Run code.
U polje Define inputs unesite
bodykoji vraća objekatsendHTTPrequest, kao što je:query{ sendHttpRequest { body } }U polju Define outputs definišite izlaznu šemu, kao što je:
type Output { productTitle: String! productStatus: String! }U polju Write code raščlanite odgovor pomoću metode
JSON.parsei pobrinite se da podaci koje vraćate odgovaraju obliku i tipovima definisanim u izlaznoj šemi, kao što je: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 } }
Dodajte radnju Log output u tok posla i povežite je sa radnjom Run code. Zatim otvorite tablu za konfiguraciju tako što ćete kliknuti na korak Run code.
U polje Output uključite promenljive koje vraća korak Run code, kao što je:
Title from HTTP response: {{runCode.productTitle}} Status from HTTP response: {{runCode.productStatus}}
Aktivirajte tok posla.
Testirajte ga promenom statusa na proizvodu, kao što je sa Nacrt na Aktivan.
Pogledajte rezultat izvršavanja na stranici Flow / Recent runs i uverite se da se vrednosti u koraku Log output podudaraju sa vrednostima koje vraća izlaz radnje Send HTTP request.
Šabloni
Obavestite svog provajdera usluge realizovanja o predstojećim porudžbinama
Pošaljite HTTP zahtev svom provajderu usluge realizovanja kada se porudžbine označe sa „Warehouse“ u Order Tagger-u. Prikaži šablon
Pošaljite nove porudžbine u Airtable
Pošaljite porudžbine u Airtable kada se kreira porudžbina. Prikaži šablon
Pošaljite sve postojeće i nove proizvode u Airtable
Na svakih 10 minuta, pronađite proizvode koji nisu poslati u Airtable (po oznaci) i pošaljite ih u Airtable. Prikaži šablon
Ažurirajte proizvode u serijama pomoću podataka o proizvodima sačuvanih u Airtable-u
Ažurirajte proizvode u serijama pomoću podataka o proizvodima koji su sačuvani u Airtable-u. Prikaži šablon
Obavestite kupce o poklon karticama koje ističu korišćenjem usluge SendGrid
Svakog dana preuzmite sve poklon kartice koje ističu za 7 dana i pošaljite imejlove kupcima korišćenjem usluge SendGrid. Prikaži šablon
Slanje imejla pomoću usluge SendGrid kada kupac naruči prilagođenu stavku
Pošaljite transakcioni imejl putem usluge SendGrid kada kupac naruči prilagođenu stavku. Prikaži šablon