patch
ローカルリソースを更新するために使用される方法
UserInfo、そこにはuserId、ユーザ名、userGender他の10個のフィールドがあるとします。いくつかの特定のページであるため、需要のプログラマブル機能は、ユーザー名のみを変更することができます。通常それは、バックエンドに渡された変更の完全なユーザ情報のuserNameオブジェクトを含む、完全なアップデートを行い、このアプローチは、ブロードバンドを無駄にします。こうしてpatch
生まれた、1回だけuserName
指定されたリソースへの要求が部分更新、受信した更新の唯一の後のフィールドであることを示します。
そして、put
それはまた、リソースを更新しますが、使用している場合、フロントエンドの提供は、理論的には、完全なリソースオブジェクトでなければならない必要としているがput
、しかし完全に提供しなかったUserInfo
場合、それらのフィールドの欠落をクリアする必要があります。
あなたはからプログラムに二つの異なる方法、メソッド名のバックエンド処理を行うための標準的な手順に従わなかった場合put
の変更patchm没有任何影响。
PATCHとPUT性との間の重要な違いがある:PUTむしろPATCHの冪等より、冪等であり(動作は何度でも同じ時間にシステムに影響を行う表します)。
新しいリソースは、対応する複数回作成されるたびに繰り返される場合は、POSTメソッドは、冪等ではありません。要求がタイムアウトする場合、質問に答える必要があります:リソースは、サーバー上で作成されたかどうかを?その後、もう一度やり直すか、リソースのリストを確認することができますか?この問題への電源他の方法が存在しないために、私たちは、安全要求を繰り返しすることができます。
オリジナル:https://blog.csdn.net/varyall/article/details/80895945