Lähetä HTTP-pyyntö
Lähetä HTTP-pyyntö -toiminto yhdistää työnkulkusi verkkopalvelimeen tai URL-osoitteeseen ja lähettää HTTP-pyyntöjä.
Kun Flow on lähettänyt HTTP-pyyntösi, se odottaa enintään 30 sekunnin ajan HTTP-vastauskoodia. Jos Flow ei ole saanut vastausta 30 sekunnin kuluessa, se sulkee yhteyden sovellukseesi. Myöhemmin se yrittää pyyntöä uudelleen.
Kentät
Lähetä HTTP-pyyntö -toiminto sisältää seuraavat kentät.
| Kenttä | Kuvaus |
|---|---|
| HTTP-menetelmä | Lähetettävän HTTP-pyynnön menetelmä. Lähetä HTTP-pyyntö Toiminto tukee seuraavia menetelmiä:
|
| URL | Sen palvelimen URL-osoite, jolle HTTP-pyyntö lähetetään. |
| Otsikot | HTTP-pyynnön avain-arvo-pari. Voit syöttää useita avain-arvo-pareja. |
| Runko | Palvelimelle lähetettävä sisältö. |
| Asiakasvirheen sattuessa (4XX-vastaus) | Kun vastaanotetaan vastauskoodi , joka ilmaisee asiakasvirheen, Flow tekee seuraavaa:
|
| Palvelinvirheen sattuessa (5XX- tai 429-vastaus) | Kun vastaanotetaan vastauskoodi , joka ilmaisee palvelinvirheen, Flow tekee seuraavaa:
|
Palautetut tiedot
Jotta voit käyttää palautettuja tietoja tätä toimintoa seuraavissa vaiheissa, käytä sendHttpRequest-nimistä muuttujaa, joka sisältää kaikki HTTP-vastauksen tiedot. Voit myös käyttää Suorita koodi -toimintoa vastauksen body-osan jäsentämiseen käytettäväksi myöhemmissä työnkulun vaiheissa, kuten alla olevassa esimerkissä.
Jos Lähetä HTTP-pyyntö -toimintoa käytetään useita kertoja yhdessä työnkulussa, muuttujan nimeen lisätään numero. Esimerkiksi työnkulussa, joka käyttää Lähetä HTTP-pyyntö -toimintoa kahdesti, ensimmäinen palautettavan tiedon muuttuja on sendHttpRequest ja toinen on sendHttpRequest1. Tätä nimeä ei voi mukauttaa.
Vastauskoodit
Seuraavassa taulukossa kuvataan, miten Flow käsittelee HTTP-vastauskoodin saatuaan vastauksen.
| HTTP-vastauskoodi | Miten Flow käsittelee vastauskoodin |
|---|---|
| 2XX tai 3XX Onnistui | Flow merkitsee HTTP-pyynnön onnistuneeksi ja suorittaa työnkulun seuraavat toiminnot. |
| 4XX-virheet, 5XX- ja 429-virheet | Riippuen toiminnon määrityksistä Flow tekee seuraavaa:
|
| Muu vastauskoodi | Jos vastaus palauttaa koodin, jota ei ole kuvattu tässä taulukossa, tai se aikakatkaistaan toimintojen uudelleenyrityksen aikana, Flow merkitsee HTTP-pyynnön epäonnistuneeksi, epäonnistuttaa työnkulun suorituksen eikä suorita työnkulun seuraavia toimintoja. |
Salaisuudet
Salaisuuksia (secrets) käytetään arkaluonteisten tietojen, kuten käyttöoikeustunnusten tai salasanojen, turvalliseen tallentamiseen Lähetä HTTP-pyyntö -toiminnossa. Salaisuuksia luodaan ja hallinnoidaan Flow > Asetukset -sivulla. Salaisuus sisältää tunnisteen, arvon ja kuvauksen. Viittaa salaisuuteen liquid-muuttujana (kuten {{secrets.handle}}) tai Lisää salaisuus -valinnan kautta, kun määrität URL-, Otsikon arvo- tai Runko-kenttiä. Salaisuuksien arvot eivät koskaan näy Flow'n käyttöliittymässä ja ne poistetaan työnkulun suorituslokeista.
Käynnistimet
Lähetä HTTP-pyyntö -toimintoa voi käyttää missä tahansa työnkulussa.
Esimerkit
Esimerkki 1: Lähetä HTTP-pyyntö ulkoiseen palveluun
Tässä esimerkissä Flow'ta käytetään HTTP-pyynnön lähettämiseen ulkoiseen palveluun.
Määritä ennen aloittamista verkkopalvelu, joka vastaanottaa HTTP-pyyntöjä ja tallentaa niiden tiedot testausta varten, esimerkiksi Request Catcher. Muista noudattaa varovaisuutta, kun lähetät arkaluonteisia tietoja (kuten salasanoja tai API-avaimia) kolmannen osapuolen palveluun.
Vaiheet:
- Valitse Tuotteen tila päivitetty -käynnistin, jonka avulla voit testata tätä työnkulkua muuttamalla tuotteen tilaa.
- Lisää Lähetä HTTP-pyyntö -toiminto työnkulkuusi ja yhdistä se käynnistimeen. Avaa sitten määrityspaneeli klikkaamalla Lähetä HTTP-pyyntö -vaihetta.
- Kirjoita HTTP-menetelmä-kenttään
POST. - Kirjoita URL-kenttään testattava URL-osoite, kuten
https://yourFlowTest.requestcatcher.com/test. - Lisää Otsakkeet-osioon otsake, jonka avain on
Content-Typeja arvo ontext/plain. - Kirjoita Runko-osioon
{{product.title}}ja{{product.status}}, jotta voit lähettää tuotteen nimen ja päivitetyn tilan käynnistimestä.
- Kirjoita HTTP-menetelmä-kenttään
- Aktivoi työnkulku.
- Testaa sitä muuttamalla tuotteen tilaa, esimerkiksi tilasta Luonnos tilaan Aktiivinen.
- Tarkkaile tuloksia ulkoisessa testauspalvelussa, kuten tässä esimerkissä
https://yourFlowTest.requestcatcher.com/.
Esimerkki 2: Käytä Suorita koodi -toimintoa HTTP-vastauksen jäsentämiseen
Tässä esimerkissä voit Flown avulla lähettää HTTP-pyynnön ulkoiseen palveluun ja jäsentää Suorita koodi -toiminnolla HTTP-vastauksen body-osan käytettäväksi myöhemmissä työnkulun vaiheissa.
Ennen kuin aloitat, valitse verkkopalvelu, joka vastaanottaa HTTP-pyyntöjä ja palauttaa tietoja, kuten Postman Echo. Muista noudattaa varovaisuutta, kun lähetät arkaluonteisia tietoja (kuten salasanoja tai API-avaimia) kolmannen osapuolen palveluun.
Vaiheet:
Valitse Tuotteen tila päivitetty -käynnistin, jonka avulla voit testata tätä työnkulkua muuttamalla tuotteen tilaa.
Lisää Lähetä HTTP-pyyntö -toiminto työnkulkuusi ja yhdistä se käynnistimeen. Avaa sitten määrityspaneeli klikkaamalla Lähetä HTTP-pyyntö -vaihetta.
Kirjoita HTTP-menetelmä-kenttään
POST.Kirjoita URL-kenttään testattava URL-osoite, kuten
https://postman-echo.com/post.Lisää Otsakkeet-osioon otsake, jonka avain on
Content-Typeja arvo onapplication/json.Kirjoita Runko-osioon esimerkki-JSON, joka palautetaan työnkulkuun, kuten:
{ "productTitle": "{{product.title}}", "productStatus": "{{product.status}}" }
Lisää Suorita koodi -toiminto työnkulkuusi ja yhdistä se Lähetä HTTP-pyyntö -toimintoon. Avaa sitten määrityspaneeli klikkaamalla Suorita koodi -vaihetta.
Sisällytä Määritä syötteet -kenttään
sendHTTPrequest-objektin palauttamabody-osa, kuten:query{ sendHttpRequest { body } }Määritä Määritä tulosteet -kenttään tulosteet tulosteskeeman mukaisesti, esimerkiksi:
type Output { productTitle: String! productStatus: String! }Jäsennä vastaus Kirjoita koodi -kentässä
JSON.parse-metodilla ja varmista, että palauttamasi data vastaa tuloskeemassa määritettyä muotoa ja tyyppejä, kuten: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 } }
Lisää Kirjaa tuloste lokiin -toiminto työnkulkuusi ja yhdistä se Suorita koodi -toimintoon. Avaa sitten määrityspaneeli klikkaamalla Suorita koodi -vaihetta.
Sisällytä Tuloste-kenttään Suorita koodi -vaiheen palauttamat muuttujat, kuten:
Title from HTTP response: {{runCode.productTitle}} Status from HTTP response: {{runCode.productStatus}}
Aktivoi työnkulku.
Testaa sitä muuttamalla tuotteen tilaa, esimerkiksi tilasta Luonnos tilaan Aktiivinen.
Tarkkaile tuloksena olevaa suoritusta Flow / Viimeisimmät suoritukset -sivulla ja huomaa, että Kirjaa tuloste lokiin -vaiheen arvot vastaavat Lähetä HTTP-pyyntö -toiminnon tulosteen palauttamia arvoja.
Mallit
Ilmoita tilausten täyttämisen tarjoajalle tulevista tilauksista
Lähetä HTTP-pyyntö tilausten täyttämisen tarjoajalle, kun tilauksiin lisätään Order Taggerissa tunniste ”Warehouse”. Näytä malli
Lähetä uudet tilaukset Airtableen
Lähetä tilaukset Airtableen, kun tilaus luodaan. Näytä malli
Lähetä kaikki olemassa olevat ja uudet tuotteet Airtableen
Etsi 10 minuutin välein tuotteet, joita ei ole lähetetty Airtableen (tunnisteen perusteella), ja lähetä ne Airtableen. Näytä malli
Päivitä tuotteet erissä Airtableen tallennettujen tuotetietojen perusteella
Päivitä tuotteet erissä Airtableen tallennettujen tuotetietojen perusteella. Näytä malli
Ilmoita asiakkaille vanhentuvista lahjakorteista SendGridin avulla
Hae joka päivä kaikki lahjakortit, jotka vanhenevat 7 päivän kuluessa, ja lähetä asiakkaille sähköpostia SendGridin avulla. Näytä malli
Lähetä sähköpostia SendGridin avulla, kun asiakas tilaa räätälöidyn tuotteen
Lähetä transaktiosähköposti SendGridin avulla, kun asiakas tilaa räätälöidyn tuotteen. Näytä malli