tanaka101

べき等性

別名: 冪等性, Idempotent, Idempotency

べき等性(idempotent)は、同じ操作を何度実行しても、結果が変わらない性質のことです。

HTTPメソッドでは、以下のようにべき等かどうかが決まっています。

メソッドべき等理由
GET何度取得しても同じデータが返る
PUT何度更新しても同じ状態になる
DELETE何度削除しても「存在しない」状態になる
POST×実行するたびに新しいデータが作られる

べき等性を意識する場面

API開発では、べき等かどうかでロジックの設計が変わります。

たとえば、べき等でないPOSTリクエストでは「同じデータが重複作成されないか」を考慮する必要があります。ネットワークの問題でリクエストが再送信された場合、べき等な処理なら問題ありませんが、べき等でない処理では意図しない重複が発生する可能性があるためです。