ส่งคำขอ HTTP
การดำเนินการส่งคำขอ HTTPจะเชื่อมต่อขั้นตอนการทำงานของคุณกับเซิร์ฟเวอร์หรือ URL ของเว็บไซต์ และส่งคำขอ HTTP
หลังจาก Flow ส่งคำขอ HTTP ของคุณแล้ว ระบบจะรอให้แอปของคุณต อบกลับด้วยรหัสตอบกลับ HTTP เป็นเวลาไม่เกิน 30 วินาที ถ้าหาก Flow ไม่ได้รับการตอบกลับหลังจาก 30 วินาที ระบบจะทำการตัดการเชื่อมต่อกับแอปของคุณ หลังจากนั้น ระบบจะส่งคำขอใหม่อีกครั้ง
ในหน้านี้
ช่อง
การดำเนินการส่งคำขอ HTTP มีช่องดังต่อไปนี้
ช่อง | คำอธิบาย |
---|---|
วิธีการของ HTTP | วิธีที่ใช้ส่งคำขอ HTTP การดำเนินการส่งคำขอ HTTP รองรับวิธีการต่อไปนี้:
|
URL | URL ของเซิร์ฟเวอร์ที่มีการส่งคำขอ HTTP ไป |
ส่วนหัว | คู่คีย์และค่าสำหรับคำขอ HTTP สามารถป้อนคู่คีย์-ค่าได้หลายคู่ |
เนื้อหา | เนื้อหาที่จะส่งไปยังเซิร์ฟเวอร์ |
ทริกเกอร์
การดำเนินการส่งคำขอ HTTP นั้นสามารถใช้ไ ด้ในทุกขั้นตอนการทำงาน
ตัวอย่าง
เรียกใช้ API ผู้ดูแลระบบ GraphQL ของ Shopify
ในตัวอย่างนี้ คุณจะใช้ Flow เพื่อแก้ไขชื่อสินค้าโดยการเรียกใช้ API productUpdate
ก่อนที่คุณจะเริ่ม ให้ดำเนินการดังต่อไปนี้:
-
ตั้งค่าและติดตั้งแอปแบบกำหนดเอง ที่มีขอบเขต
write_products
คุณจะใช้โทเค็นการเข้าถึง Admin API เพื่อเรียกใช้ API ในตัวอย่างนี้
จากนั้นให้ดำเนินการตามขั้นตอนเหล่านี้ใน Flow:
- เลือกทริกเกอร์ อัปเดตสถานะสินค้าแล้ว ซึ่งช่วยให้คุณสามารถทดสอบขั้นตอนการทำงานนี้ได้โดยการเปลี่ยนสถานะของสินค้า
- เพิ่มส่งคำขอ HTTP ไปยังขั้นตอนการทำงานของคุณและเชื่อมต่อกับทริกเกอร์
- เปิดแผงการกําหนดค่าโดยคลิกที่ขั้นตอนส่งคำขอ HTTP
- ในช่องวิธีการของ HTTP ให้ป้อน
POST
- ในช่องURL ให้ป้อน
https://admin.shopify.com/store/shopname/api/2023-01/graphql.json
แทนที่โดเมนร้านค้าของคุณและเวอร์ชัน API ที่ต้องการ - ในส่วนของส่วนหัว ให้ป้อนคีย์ของ
X-Shopify-Access-Token
และค่าของYOUR_API_SECRET_KEY
ที่คุณได้รับในขั้นตอนแรก - ในส่วนของส่วนหัว ให้ป้อนส่วนหัวรองที่มีคีย์ของ
Content-Type
และค่าของapplication/json
- ในส่วนเนื้อหา ให้ป้อนสิ่งต่อไปนี้:
json
{"query": "mutation { productUpdate(input: {id: \"{{ product.id }}\", title: \"{{product.title}}-edited\"}) { product { id } } }"}
- รหัสนี้จะเพิ่ม
-edited
ต่อท้ายชื่อของคุณ - ช่องว่างและบรรทัดใหม่มีความหมายต่อเครื่องมือแก้ไข Liquid ดังนั้นหลีกเลี่ยงการเพิ่มหรือลบช่องว่าง นอกจากนี้ ยกเว้นเอาท์พุต Liquid ให้หลีกเลี่ยงการย่อวงเล็บ เช่น
{{
และ}}
เนื่องจากสำรองไว้สำหรับกับตัวแปร Liquid
- กําหนดค่าขั้นตอนที่เหลือและเปิดใช้งาน
- ทดสอบโดยการเปลี่ยนสถานะสินค้าจากแบบร่างเป็นเปิดใช้งาน หรือในทางกลับกัน
เรียกใช้ API ภายนอก
ในตัวอย่างขั้นตอนการทำงานนี้ ระบบจะส่งคำขอ POST HTTP ไปยังเซิร์ฟเวอร์เมื่อคำสั่งซื้อได้รับการชำระเงิน
รหัสการตอบกลับ
ตารางต่อไปนี้จะอธิบายว่า Flow ประมวลผลรหัสการตอบสนอง HTTPอย่างไรหลังจากได้รับการตอบสนอง
รหัสตอบกลับ HTTP | วิธีที่ Flow ประมวลผลรหัสตอบกลับ |
---|---|
ความสำเร็จ 2XX หรือ 3XX | Flow จะทำเครื่องหมายคำขอ HTTP ว่าสำเร็จและดำเนินการขั้นต่อไปในขั้นตอนการทำงาน |
ข้อผิดพลาด 429 หรือ 5XX | Flow จะลองทำการดำเนินการอีกครั้งเป็นเวลาไม่เกิน 24 ชั่วโมงจนกว่าจะได้รับรหัสตอบกลับอื่นหรือหมดเวลา | รหัสตอบกลับอื่นๆ | หากแอปของคุณส่งคืนรหัสที่ไม่ได้ระบุไว้ในตารางนี้หรือหมดเวลาในขณะที่ลองทำการดำเนินการอีกครั้ง Flow จะทำเครื่องหมายคำขอ HTTP ว่าล้มเหลว ฉะนั้นการดำเนินการขั้นต่อไปในขั้นตอนการทำงานจะไม่เกิดขึ้น |
ข้อจํากัด
การดำเนินการส่งคำขอ HTTP มีข้อจำกัดดังต่อไปนี้
- การดำเนินการจะไม่ส่งคืนข้อมูลไปยังสภาพแวดล้อม Flow อันเป็นผลจากเปลี่ยน