Chuyển đến nội dung chính

Tính bất biến theo lần gọi (Idempotency)

Tất cả các endpoint đột biến POSTPATCH đều chấp nhận header Idempotency-Key tùy chọn.

Khi nào nên gửi

Dùng idempotency key khi:
  • Client có thể thử lại sau một lỗi truyền tải.
  • Worker hàng đợi có thể gửi cùng một thao tác logic nhiều hơn một lần.
  • Tác nhân AI có thể chạy lại một đột biến sau khi đã tiến hành một phần hoặc do công cụ thử lại.

Mẫu khuyến nghị

  • Tạo một key ổn định cho mỗi đột biến logic.
  • Dùng lại cùng một key khi thử lại đột biến đó.
  • Đổi key khi đột biến dự định thực hiện thay đổi.

Ví dụ

Idempotency-Key: create-project-song-1
Idempotency-Key: export-song-1

Ranh giới hợp lý

  • Một key cho việc tạo một project.
  • Một key khác cho việc export project đó.
  • Một key khác nữa cho việc cập nhật cài đặt project.
Cách này giúp việc thử lại an toàn mà không vô tình khử trùng lặp những công việc không liên quan.