HTTP მოთხოვნის გაგზავნა
მოქმედება HTTP მოთხოვნის გაგზავნა აკავშირებს შენს სამუშაო პროცესს ვებ-სერვერთან ან URL-თან და აგზავნის HTTP მოთხოვნებს.
მას შემდეგ, რაც Flow გააგზავნის შენს HTTP მოთხოვნას, ის მაქსიმუმ 30 წამს ელოდება HTTP პასუხის კოდს. თუ Flow 30 წამის შემდეგ პასუხს ვერ მიიღებს, ის წყვეტს კავშირს შენს აპთან. მოგვიანებით ის კვლავ სცდის მოთხოვნის გაგზავნას.
ველები
HTTP მოთხოვნის გაგზავნა მოქმედება შეიცავს შემდეგ ველებს.
| ველი | აღწერა |
|---|---|
| HTTP მეთოდი | გასაგზავნი HTTP მოთხოვნის მეთოდი. HTTP მოთხოვნის გაგზავნა მოქმედებას აქვს შემდეგი მეთოდების მხარდაჭერა:
|
| URL | სერვერის URL, რომელზეც იგზავნება HTTP მოთხოვნა. |
| თავსართები | კოდის და მნიშვნელობის წყვილი HTTP მოთხოვნისთვის. შესაძლებელია რამდენიმე კოდი-მნიშვნელობის წყვილის შეყვანა. |
| ძირითადი ნაწილი | კონტენტი, რომელიც უნდა გაიგზავნოს სერვერზე. |
| კლიენტის შეცდომის დროს (4XX პასუხი) | როდესაც იღებს პასუხის კოდს , რომელიც მიუთითებს კლიენტის შეცდომაზე, Flow შეასრულებს შემდეგს:
|
| სერვერის შეცდომის დროს (5XX ან 429 პასუხი) | როდესაც იღებს პასუხის კოდს , რომელიც მიუთითებს სერვერის შეცდომაზე, Flow შეასრულებს შემდეგს:
|
დაბრუნებული მონაცემები
ამ ქმედების შემდგომ საფეხურებზე დაბრუნებულ მონაცემებზე წვდომისთვის გამოიყენე ცვლადი სახელად sendHttpRequest, რომელიც მოიცავს HTTP პასუხის ყველა დეტალს. სურვილის შემთხვევაში, გამოიყენე კოდის გაშვების მოქმედება პასუხის body-ს გასაშიფრად შემდგომი სამუშაო პროცესის საფეხურებზე გამოსაყენებლად, როგორც ეს ნაჩვენებია ქვემოთ მოცემულ მაგალითში.
თუ მოქმედება HTTP მოთხოვნის გაგზავნა გამოიყენება რამდენჯერმე ერთსა და იმავე სამუშაო პროცესში, ცვლადის სახელს დაემატება რიცხვი. მაგალითად, სამუშაო პროცესში, რომელიც ორჯერ იყენებს HTTP მოთხოვნის გაგზავნის მოქმედებას, პირველი ცვლადი დაბრუნებული მონაცემებისთვის იქნება sendHttpRequest, ხოლო მეორე ცვლადი — sendHttpRequest1. ამ სახელის მორგება შეუძლებელია.
პასუხის კოდები
შემდეგ ცხრილში აღწერილია, თუ როგორ ამუშავებს Flow HTTP პასუხის კოდს პასუხის მიღების შემდეგ.
| HTTP პასუხის კოდი | როგორ ამუშავებს Flow პასუხის კოდს |
|---|---|
| 2XX ან 3XX წარმატება | Flow HTTP მოთხოვნას მონიშნავს როგორც წარმატებულს და ასრულებს შემდგომ ქმედებებს სამუშაო პროცესში. |
| 4XX შეცდომები, 5XX და 429 შეცდომები | ქმედების კონფიგურაციაზე დამოკიდებულებით, Flow:
|
| სხვა პასუხის კოდი | თუ პასუხი აბრუნებს ამ ცხრილში აღუწერელ კოდს, ან ქმედებების ხელახლა ცდისას დრო იწურება, Flow HTTP მოთხოვნას წარუმატებლად მონიშნავს, სამუშაო პროცესის გაშვება სრულდება წარუმატებლად და აღარ სრულდება სამუშაო პროცესის შემდგომი ქმედებები. |
საიდუმლოებები
საიდუმლოებები გამოიყენება HTTP მოთხოვნის გაგზავნის ქმედებაში გამოსაყენებელი სენსიტიური ინფორმაციის უსაფრთხოდ შესანახად, როგორიცაა წვდომის ტოკენები ან პაროლები. საიდუმლოებების შექმნა და მართვა ხდება Flow-ს > პარამეტრების გვერდიდან. საიდუმლო შეიცავს იდენტიფიკატორს, მნიშვნელობას და აღწერას. URL-ის, თავსართის მნიშვნელობის ან ძირითადი ტექსტის ველების კონფიგურაციისას მიუთითე საიდუმლო Liquid ცვლადის სახით (მაგალითად {{secrets.handle}}) ან საიდუმლოს დამატების ვარიანტიდან. საიდუმლო მნიშვნელობები არასოდეს ჩანს Flow-ს ინტერფეისში და დაფარულია სამუშაო პროცესის გაშვების ჟურნალებში.
ტრიგერები
HTTP მოთხოვნის გაგზავნის ქმედების გამოყენება ნებისმიერ სამუშაო პროცესშია შესაძლებელი.
მაგალითები
მაგალითი 1: HTTP მოთხოვნის გაგზავნა გარე სერვისზე
ამ მაგალითში გამოიყენე Flow გარე სერვისზე HTTP მოთხოვნის გასაგზავნად.
დაწყებამდე, დააკონფიგურირე ვებსერვისი, რომელიც იღებს HTTP მოთხოვნებს და ტესტირების მიზნით ინახავს ამ მოთხოვნების მონაცემებს, როგორიცაა Request Catcher. გახსოვდეს, რომ მესამე მხარის სერვისზე სენსიტიური მონაცემების (როგორიცაა პაროლები ან API გასაღებები) გაგზავნისას სიფრთხილე გმართებს.
ნაბიჯები:
- აირჩიე პროდუქტის სტატუსი განახლებულია ტრიგერი, რაც საშუალებას მოგცემს, რომ ეს სამუშაო პროცესი პროდუქტზე სტატუსის შეცვლით გატესტო.
- დაამატე ქმედება: HTTP მოთხოვნის გაგზავნა შენს სამუშაო პროცესში და დააკავშირე ის ტრიგერთან. შემდეგ გახსენი კონფიგურაციის პანელი HTTP მოთხოვნის გაგზავნა ნაბიჯზე დაწკაპუნებით.
- HTTP მეთოდის ველში შეიყვანე
POST. - URL ველში შეიყვანე გასატესტი URL, როგორიცაა
https://yourFlowTest.requestcatcher.com/test. - თავსართების სექციაში შეიყვანე თავსართი, სადაც გასაღები იქნება
Content-Type, ხოლო მნიშვნელობა —text/plain. - ძირითადი ტექსტის სექციაში შეიყვანე
{{product.title}}და{{product.status}}ტრიგერიდან პროდუქტის სახელწოდების და განახლებული სტატუსის გასაგზავნად.
- HTTP მეთოდის ველში შეიყვანე
- გაააქტიურე სამუშაო პროცესი.
- გატესტე ის პროდუქტზე სტატუსის შეცვლით, მაგალითად, მონახაზიდან აქტიურზე.
- დააკვირდი შედეგებს გარე ტესტირების სერვისში, როგორიცაა ამ მაგალითში
https://yourFlowTest.requestcatcher.com/.
მაგალითი 2: „კოდის გაშვების“ გამოყენება HTTP პასუხის გასარჩევად
ამ მაგალითში, გამოიყენე Flow გარე სერვისზე HTTP მოთხოვნის გასაგზავნად და კოდის გაშვების ქმედება HTTP პასუხის body-ის გასარჩევად, რომელიც შემდგომი სამუშაო პროცესის ნაბიჯებში გამოიყენება.
დაწყებამდე, აირჩიე ვებსერვისი, რომელიც იღებს HTTP მოთხოვნებს და აბრუნებს მონაცემებს, როგორიცაა Postman Echo. გახსოვდეს, რომ მესამე მხარის სერვისზე სენსიტიური მონაცემების (როგორიცაა პაროლები ან API გასაღებები) გაგზავნისას სიფრთხილე გმართებს.
ნაბიჯები:
აირჩიე პროდუქტის სტატუსი განახლებულია ტრიგერი, რაც საშუალებას მოგცემს, რომ ეს სამუშაო პროცესი პროდუქტზე სტატუსის შეცვლით გატესტო.
დაამატე HTTP მოთხოვნის გაგზავნის ქმედება შენს სამუშაო პროცესში და დააკავშირე ის ტრიგერს. შემდეგ გახსენი კონფიგურაციის პანელი HTTP მოთხოვნის გაგზავნის ნაბიჯზე დაწკაპუნებით.
HTTP მეთოდის ველში შეიყვანე
POST.URL ველში შეიყვანე გასატესტი URL, როგორიცაა
https://postman-echo.com/post.თავსართების სექციაში შეიყვანე თავსართი, სადაც გასაღები იქნება
Content-Type, ხოლო მნიშვნელობა —application/json.ძირითადი ტექსტის სექციაში შეიყვანე სამუშაო პროცესისთვის დასაბრუნებელი JSON მაგალითი, როგორიცაა:
{ "productTitle": "{{product.title}}", "productStatus": "{{product.status}}" }
დაამატე კოდის გაშვების ქმედება შენს სამუშაო პროცესში და დააკავშირე ის HTTP მოთხოვნის გაგზავნის ქმედებას. შემდეგ გახსენი კონფიგურაციის პანელი კოდის გაშვების ნაბიჯზე დაწკაპუნებით.
შეყვანის განსაზღვრის ველში შეიტანე
body, რომელსაც აბრუნებსsendHTTPrequestობიექტი, როგორიცაა:query{ sendHttpRequest { body } }გამოტანის განსაზღვრის ველში, რომელიც განსაზღვრულია გამოტანის სქემაში, როგორიცაა:
type Output { productTitle: String! productStatus: String! }კოდის დაწერის ველში, გაარჩიე პასუხი
JSON.parseმეთოდის გამოყენებით და დარწმუნდი, რომ შენ მიერ დაბრუნებული მონაცემები შეესაბამება გამოტანის სქემაში განსაზღვრულ ფორმასა და ტიპებს, როგორიცაა: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 } }
დაამატე გამოტანის აღრიცხვის ქმედება შენს სამუშაო პროცესში და დააკავშირე ის კოდის გაშვების ქმედებას. შემდეგ გახსენი კონფიგურაციის პანელი კოდის გაშვების ნაბიჯზე დაწკაპუნებით.
გამოტანის ველში შეიტანე კოდის გაშვების ნაბიჯის მიერ დაბრუნებული ცვლადები, როგორიცაა:
Title from HTTP response: {{runCode.productTitle}} Status from HTTP response: {{runCode.productStatus}}
გაააქტიურე სამუშაო პროცესი.
გატესტე ის პროდუქტზე სტატუსის შეცვლით, მაგალითად, მონახაზიდან აქტიურზე.
დააკვირდი გაშვების შედეგს Flow / ბოლო გაშვებების გვერდიდან და შეამჩნევ, რომ გამოტანის აღრიცხვის ნაბიჯში არსებული მნიშვნელობები შეესაბამება HTTP მოთხოვნის გაგზავნის გამოტანიდან დაბრუნებულ მნიშვნელობებს.
შაბლონები
აცნობე შეკვეთის შესრულების პროვაიდერს მომავალი შეკვეთების შესახებ
გაუგზავნე HTTP მოთხოვნა შენი შეკვეთის შესრულების პროვაიდერს, როდესაც Order Tagger-ში შეკვეთებს მიენიჭება „Warehouse“ თეგი. შაბლონის ნახვა
ახალი შეკვეთების გაგზავნა Airtable-ში
გააგზავნე შეკვეთები Airtable-ში შეკვეთის შექმნისას. შაბლონის ნახვა
ყველა არსებული და ახალი პროდუქტის გაგზავნა Airtable-ში
ყოველ 10 წუთში იპოვე ის პროდუქტები, რომლებიც არ გაგზავნილა Airtable-ში (თეგის მიხედვით) და გააგზავნე ისინი Airtable-ში. შაბლონის ნახვა
პროდუქტების პარტიებად განახლება Airtable-ში შენახული პროდუქტების მონაცემებიდან
განაახლე პროდუქტები პარტიებად Airtable-ში შენახული პროდუქტების მონაცემებიდან. შაბლონის ნახვა
აცნობე მომხმარებლებს სასაჩუქრე ბარათების ვადის გასვლის შესახებ SendGrid-ის გამოყენებით
ყოველდღიურად მიიღე ყველა სასაჩუქრე ბარათი, რომელთაც ვადა 7 დღეში გასდით და SendGrid-ის გამოყენებით გაუგზავნე ელფოსტა მომხმარებლებს. შაბლონის ნახვა
SendGrid-ის მეშვეობით ელფოსტის გაგზავნა, როდესაც მომხმარებლები ათავსებენ შეკვეთას მორგებულ ერთეულზე
გაგზავნე ტრანზაქციული ელფოსტა SendGrid-ის მეშვეობით, როდესაც მომხმარებელი ათავსებს შეკვეთას მორგებულ ერთეულზე. შაბლონის ნახვა