HTTP అభ్యర్థనను పంపండి
Send HTTP request చర్య మీ వర్క్ఫ్లోను ఒక వెబ్ సర్వర్ లేదా URLకి కనెక్ట్ చేసి, HTTP అభ్యర్థనలను పంపుతుంది.
Flow మీ HTTP అభ్యర్థనను పంపిన తర్వాత, అది HTTP ప్రతిస్పందన కోడ్ కోసం గరిష్టంగా 30 సెకన్ల పాటు వేచి ఉంటుంది. 30 సెకన్ల తర్వాత Flowకు ఎలాంటి ప్రతిస్పందన రాకపోతే, అది మీ యాప్కి కనెక్షన్ను మూసివేస్తుంది. ఆ తర్వాత, ఇది అభ్యర్థన కోసం మళ్లీ ప్రయత్నిస్తుంది.
ఫీల్డ్లు
Send HTTP request చర్య కింది ఫీల్డ్లను కలిగి ఉంటుంది.
| ఫీల్డ్ | వివరణ |
|---|---|
| HTTP పద్ధతి | పంపాల్సిన HTTP అభ్యర్థన పద్ధతి. ఈ HTTP అభ్యర్థనను పంపండి చర్య కింది పద్ధతులకు మద్దతు ఇస్తుంది:
|
| URL | HTTP అభ్యర్థనను పంపే సర్వర్ యొక్క URL. |
| హెడర్లు | HTTP అభ్యర్థన కోసం కీ, వాల్యూ జత. బహుళ కీ-వాల్యూ జతలను ఎంటర్ చేయవచ్చు. |
| బాడీ | సర్వర్కు పంపాల్సిన కంటెంట్. |
| క్లయింట్ ఎర్రర్ ఏర్పడినప్పుడు (4XX ప్రతిస్పందన) | ఏదైనా ప్రతిస్పందన కోడ్ ద్వారా క్లయింట్ ఎర్రర్ వచ్చినట్లు తెలిస్తే, Flow కింది విధంగా చేస్తుంది:
|
| సర్వర్ ఎర్రర్ ఏర్పడినప్పుడు (5XX లేదా 429 ప్రతిస్పందన) | ఏదైనా ప్రతిస్పందన కోడ్ ద్వారా సర్వర్ ఎర్రర్ వచ్చినట్లు తెలిస్తే, Flow కింది విధంగా చేస్తుంది:
|
తిరిగి వచ్చిన డేటా
ఈ చర్యను అనుసరించే దశల్లో తిరిగి వచ్చిన డేటాను యాక్సెస్ చేయడానికి, sendHttpRequest పేరు గల వేరియబుల్ను ఉపయోగించండి, ఇందులో HTTP ప్రతిస్పందనకు సంబంధించిన అన్ని వివరాలు ఉంటాయి. ఆప్షనల్గా, దిగువ ఉన్న ఉదాహరణలో వలె తదుపరి వర్క్ఫ్లో దశలలో ఉపయోగించడం కోసం ప్రతిస్పందనలోని bodyని పార్స్ చేయడానికి Run code చర్యను ఉపయోగించండి.
ఒకే వర్క్ఫ్లోలో Send HTTP request చర్యను బహుళ సార్లు ఉపయోగించినట్లయితే, ఆ వేరియబుల్ పేరుకు ఒక సంఖ్య జోడించబడుతుంది. ఉదాహరణకు, Send HTTP request చర్యను రెండుసార్లు ఉపయోగించే వర్క్ఫ్లోలో, తిరిగి వచ్చిన డేటాకి సంబంధించిన మొదటి వేరియబుల్ sendHttpRequest మరియు రెండవ వేరియబుల్ sendHttpRequest1గా ఉంటాయి. ఈ పేరును అనుకూలీకరించలేరు.
ప్రతిస్పందన కోడ్లు
Flow ప్రతిస్పందనను స్వీకరించిన తర్వాత HTTP ప్రతిస్పందన కోడ్ను ఎలా ప్రాసెస్ చేస్తుందో కింది పట్టిక వివరిస్తుంది.
| HTTP ప్రతిస్పందన కోడ్ | Flow ప్రతిస్పందన కోడ్ను ఎలా ప్రాసెస్ చేస్తుంది |
|---|---|
| 2XX లేదా 3XX విజయం | Flow, HTTP అభ్యర్థనను విజయవంతమైనదిగా మార్క్ చేసి, వర్క్ఫ్లోలో తదుపరి చర్యలను చేస్తుంది. |
| 4XX ఎర్రర్లు, 5XX మరియు 429 ఎర్రర్లు | చర్యను కాన్ఫిగర్ చేసిన విధానం ఆధారంగా, Flow ఈ కింది వాటిని చేస్తుంది:
|
| ఇతర ప్రతిస్పందన కోడ్ | ప్రతిస్పందన ఈ పట్టికలో వివరించని కోడ్ను అందిస్తే లేదా చర్యలను మళ్లీ ప్రయత్నిస్తున్నప్పుడు టైమ్ అవుట్ అయితే, Flow HTTP అభ్యర్థనను విఫలమైనట్లు మార్క్ చేస్తుంది, వర్క్ఫ్లో రన్ను విఫలం చేస్తుంది మరియు తదుపరి వర్క్ఫ్లో చర్యలను తీసుకోదు. |
సీక్రెట్లు
Send HTTP request చర్యలో ఉపయోగించడానికి యాక్సెస్ టోకెన్లు లేదా పాస్వర్డ్ల వంటి సున్నితమైన సమాచారాన్ని సురక్షితంగా నిల్వ చేయడానికి సీక్రెట్లు ఉపయోగించబడతాయి. Flow > సెట్టింగ్లు పేజీ నుండి సీక్రెట్లు సృష్టించబడతాయి అలాగే నిర్వహించబడతాయి. ఒక సీక్రెట్లో హ్యాండిల్, విలువ మరియు వివరణ ఉంటాయి. URL, హెడర్ విలువ లేదా బాడీ ఫీల్డ్లను కాన్ఫిగర్ చేస్తున్నప్పుడు, సీక్రెట్ను లిక్విడ్ వేరియబుల్ ({{secrets.handle}} వలె) లేదా సీక్రెట్ను జోడించండి ఆప్షన్ నుండి సూచించండి. సీక్రెట్ విలువలు Flow ఇంటర్ఫేస్లో ఎప్పుడూ కనిపించవు మరియు వర్క్ఫ్లో రన్ లాగ్ల నుండి మినహాయించబడతాయి.
ట్రిగ్గర్లు
ఏ వర్క్ఫ్లోలో అయినా Send HTTP request చర్యను ఉపయోగించవచ్చు.
ఉదాహరణలు
ఉదాహరణ 1: ఎక్స్టర్నల్ సర్వీస్కు HTTP అభ్యర్థనను పంపండి
ఈ ఉదాహరణలో, ఎక్స్టర్నల్ సర్వీస్కు HTTP అభ్యర్థనను పంపడానికి Flowను ఉపయోగించండి.
మీరు ప్రారంభించడానికి ముందు, Request Catcher లాగా HTTP అభ్యర్థనలను స్వీకరించి, పరీక్షించడం కోసం ఆ అభ్యర్థనల డేటాను నిల్వ చేసే వెబ్ సర్వీస్ను కాన్ఫిగర్ చేయండి. థర్డ్-పార్టీ సర్వీస్కు సున్నితమైన డేటాను (పాస్వర్డ్లు లేదా API కీల లాంటివి) పంపుతున్నప్పుడు జాగ్రత్తగా ఉండాలని గుర్తుంచుకోండి.
దశలు:
- Product status updated ట్రిగ్గర్ను ఎంచుకోండి, ఇది ఉత్పత్తిలో స్టేటస్ను మార్చడం ద్వారా ఈ వర్క్ఫ్లోను పరీక్షించడానికి మిమ్మల్ని అనుమతిస్తుంది.
- ఒక Send HTTP Request చర్యను మీ వర్క్ఫ్లోకి జోడించి, దానిని ట్రిగ్గర్కు కనెక్ట్ చేయండి. ఆపై దీన్ని క్లిక్ చేయడం ద్వారా కాన్ఫిగరేషన్ ప్యానెల్ను తెరవండి: Send HTTP Request దశ.
- HTTP పద్ధతి ఫీల్డ్లో,
POSTను ఎంటర్ చేయండి. - URL ఫీల్డ్లో, పరీక్షించడానికి URLను ఎంటర్ చేయండి, ఉదాహరణకు
https://yourFlowTest.requestcatcher.com/test. - హెడర్ల విభాగంలో,
Content-Typeఅనే కీతో మరియుtext/plainఅనే విలువతో ఒక హెడర్ను ఎంటర్ చేయండి. - బాడీ విభాగంలో, ట్రిగ్గర్ నుండి ఉత్పత్తి టైటిల్ మరియు అప్డేట్ చేసిన స్టేటస్ను పంపడానికి
{{product.title}}మరియు{{product.status}}ను ఎంటర్ చేయండి.
- HTTP పద్ధతి ఫీల్డ్లో,
- వర్క్ఫ్లోను యాక్టివేట్ చేయండి.
- ఒక ఉత్పత్తిలో స్టేటస్ను మార్చడం ద్వారా దీన్ని పరీక్షించండి, ఉదాహరణకు డ్రాఫ్ట్ నుండి యాక్టివ్.
- ఈ ఉదాహరణలో
https://yourFlowTest.requestcatcher.com/వంటి ఎక్స్టర్నల్ టెస్టింగ్ సర్వీస్లో ఫలితాలను గమనించండి.
ఉదాహరణ 2: HTTP ప్రతిస్పందనను పార్స్ చేయడానికి రన్ కోడ్ను ఉపయోగించండి
ఈ ఉదాహరణలో, తదుపరి వర్క్ఫ్లో దశల్లో ఉపయోగించడం కోసం ఎక్స్టర్నల్ సర్వీస్కు HTTP అభ్యర్థనను పంపడానికి Flowను, అలాగే HTTP ప్రతిస్పందనకు చెందిన bodyని పార్స్ చేయడానికి రన్ కోడ్ చర్యను ఉపయోగించండి.
మీరు ప్రారంభించడానికి ముందు, Postman Echo లాగా HTTP అభ్యర్థనలను స్వీకరించి, డేటాను అందించే వెబ్ సర్వీస్ను ఎంచుకోండి. థర్డ్-పార్టీ సర్వీస్కు సున్నితమైన డేటాను (పాస్వర్డ్లు లేదా API కీల లాంటివి) పంపుతున్నప్పుడు జాగ్రత్తగా ఉండాలని గుర్తుంచుకోండి.
దశలు:
Product status updated ట్రిగ్గర్ను ఎంచుకోండి, ఇది ఉత్పత్తిలో స్టేటస్ను మార్చడం ద్వారా ఈ వర్క్ఫ్లోను పరీక్షించడానికి మిమ్మల్ని అనుమతిస్తుంది.
మీ వర్క్ఫ్లోకి Send HTTP Request చర్యను జోడించి, దానిని ట్రిగ్గర్కు కనెక్ట్ చేయండి. ఆపై Send HTTP Request దశను క్లిక్ చేయడం ద్వారా కాన్ఫిగరేషన్ ప్యానెల్ను తెరవండి.
HTTP పద్ధతి ఫీల్డ్లో,
POSTను ఎంటర్ చేయండి.URL ఫీల్డ్లో, పరీక్షించడానికి URLను ఎంటర్ చేయండి, ఉదాహరణకు
https://postman-echo.com/post.హెడర్ల విభాగంలో,
Content-Typeఅనే కీతో మరియుapplication/jsonఅనే విలువతో ఒక హెడర్ను ఎంటర్ చేయండి.వర్క్ఫ్లోకు తిరిగి ఇవ్వడానికి బాడీ విభాగంలో, ఉదాహరణ JSONను ఎంటర్ చేయండి, ఉదాహరణకు:
{ "productTitle": "{{product.title}}", "productStatus": "{{product.status}}" }
మీ వర్క్ఫ్లోకి రన్ కోడ్ చర్యను జోడించి, దానిని Send HTTP request చర్యకు కనెక్ట్ చేయండి. ఆపై రన్ కోడ్ దశను క్లిక్ చేయడం ద్వారా కాన్ఫిగరేషన్ ప్యానెల్ను తెరవండి.
ఇన్పుట్లను నిర్వచించండి ఫీల్డ్లో,
sendHTTPrequestఆబ్జెక్ట్ ద్వారా అందించబడినbodyని చేర్చండి, ఉదాహరణకు: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 / ఇటీవలి రన్లు పేజీ నుండి వెలువడిన రన్ను గమనించండి మరియు లాగ్ అవుట్పుట్ దశలోని విలువలు, Send HTTP request అవుట్పుట్ అందించే విలువలకి సరిపోలుతున్నాయని గమనించండి.
టెంప్లేట్లు
రాబోయే ఆర్డర్ల గురించి మీ ఫుల్ఫిల్మెంట్ ప్రొవైడర్కు తెలియజేయండి
Order Taggerలో ఆర్డర్లు "Warehouse" ట్యాగ్ చేయబడినప్పుడు మీ ఫుల్ఫిల్మెంట్ ప్రొవైడర్కు HTTP అభ్యర్థనను పంపండి. టెంప్లేట్ను చూడండి
కొత్త ఆర్డర్లను Airtableకు పంపండి
ఆర్డర్ సృష్టించబడినప్పుడు ఆర్డర్లను Airtableకు పంపండి. టెంప్లేట్ను చూడండి
ఇప్పటికే ఉన్న మరియు కొత్త ఉత్పత్తులన్నింటినీ Airtableకు పంపండి
ప్రతి 10 నిమిషాలకు, (ట్యాగ్ ద్వారా) Airtableకు పంపబడని ఉత్పత్తులను కనుగొని, వాటిని Airtableకు పంపండి. టెంప్లేట్ను చూడండి
Airtableలో నిల్వ చేసిన ఉత్పత్తి డేటా నుండి ఉత్పత్తులను బ్యాచ్లలో అప్డేట్ చేయండి
Airtableలో నిల్వ చేయబడిన ఉత్పత్తి డేటా నుండి ఉత్పత్తులను బ్యాచ్లలో అప్డేట్ చేయండి. టెంప్లేట్ను చూడండి
SendGridను ఉపయోగించి గడువు ముగుస్తున్న గిఫ్ట్ కార్డ్ల గురించి కస్టమర్లకు తెలియజేయండి
ప్రతిరోజూ, 7 రోజుల్లో గడువు ముగిసే అన్ని గిఫ్ట్ కార్డ్లను పొందండి మరియు SendGridను ఉపయోగించి కస్టమర్లకు ఇమెయిల్లు పంపండి. టెంప్లేట్ను చూడండి
కస్టమర్లు కస్టమ్ ఐటెమ్ కోసం ఆర్డర్ చేసినప్పుడు SendGridని ఉపయోగించి ఇమెయిల్ పంపండి
కస్టమర్ కస్టమ్ ఐటెమ్ కోసం ఆర్డర్ చేసినప్పుడు SendGridని ఉపయోగించి లావాదేవీల ఇమెయిల్ను పంపండి. టెంప్లేట్ను వీక్షించండి