ความเป็นเอกภาพ
ลองคำขอ API ซ้ำอย่างปลอดภัยโดยไม่สร้าง charge, ลูกค้า หรือทรัพยากรอื่นๆ ที่ซ้ำกัน เรียนรู้วิธีการใช้คีย์ความเป็นเอกภาพเพื่อสร้างการผสานการชำระเงินที่เชื่อถือได้
ภาพรวม
ปัญหาเครือข่าย การหมดเวลา และข้อผิดพลาดของเซิร์ฟเวอร์สามารถทำให้คำขอ API ล้มเหลวหรือส่งคืนผลลัพธ์ที่ไม่ชัดเจน ความเป็นเอกภาพช่วยให้คุณสามารถลองคำขอซ้ำอย่างปลอดภัยโดยไม่ต้องกังวลเกี่ยวกับการดำเนินการที่ซ้ำกัน โดยการระบุเฮดเดอร์ Idempotency-Key Omise จะรับประกันว่าคำขอเดียวกันจะให้ผลลัพธ์เดียวกัน แม้ว่าจะถูกส่งหลายครั้งก็ตาม
เริ่มต้นอย่างรวดเร็ว
- เพิ่มเฮดเดอร์
Idempotency-Keyในคำขอ POST/PATCH - ใช้คีย์ที่ไม่ซ้ำกันสำหรับแต่ละการดำเนินการ (แนะนำ UUID)
- คีย์เดียวกันจะส่งคืนผลลัพธ์เดียวกัน (แคชไว้ 24 ชั่วโมง)
- จำเป็นสำหรับการสร้าง charge และการดำเนินการเกี่ยวกับเงิน
- ป้องกันการชำระเงินซ้ำระหว่างปัญหาเครือข่าย
ความเป็นเอกภาพคืออะไร?
ความเป็นเอกภาพ หมายความว่าการดำเนินการหลายครั้งจะให้ผลลัพธ์เดียวกัน ในการประมวลผลการชำระเงิน นี่เป็นสิ่งสำคัญ
ไม่มีความเป็นเอกภาพ
1. ส่งคำขอ charge → หมดเวลาเครือข่าย
2. สำเร็จหรือไม่? ไม่แน่ใจ ลองใหม่หรือไม่?
3. ลองใหม่ → charge ซ้ำ! เรียกเก็บเงินลูกค้าสองครั้ง 💥
มีความเป็นเอกภาพ
1. ส่ง charge พร้อ มคีย์ความเป็นเอกภาพ → หมดเวลาเครือข่าย
2. ลองใหม่ด้วยคีย์เดียวกัน → ส่งคืนผลลัพธ์เดียวกัน
3. ไม่มี charge ซ้ำ ✅
ความเป็นเอกภาพทำงานอย่างไร
- ส่งคำขอพร้อมเฮดเดอร์
Idempotency-Key - Omise ประมวลผลและบันทึกผลลัพธ์
- ลองใหม่ ภายใน 24 ชั่วโมงด้วยคีย์เดียวกัน:
- Omise จะส่งคืนผลลัพธ์ที่แคชไว้
- ไม่มีการดำเนินการใหม่
- ส่งคืนรหัสสถานะและเนื้อหาการตอบกลับเดียวกัน