Webサービスを介して通信する2つの別個のシステムがあります。それらをフロントエンドおよびバックエンドと呼びます。多くの処理には、バックエンドのリストの更新が含まれます。たとえば、フロントエンドは特定の人を更新する必要があります。現在、インターフェイスを決定するバックエンドを設計しています。基盤となるデータベースを更新するには、実際のデータベースIDが必要ですが、データベースIDをコンシューマーに伝達することが悪い考えである可能性がある場所もわかります。
特定のエンティティを更新するために、クライアント(つまりフロントエンド)にIDをWebサービスに送り返す必要がある場合の代替策は何ですか?IDを回避しようとしているもう1つの理由は、フロントエンドがこれらの変更を保存して後日送信することが多いためです。これには、フロントエンドがIDをシステムに保存する必要がありますが、これも悪い考えのようです。
私たちは次のことを考慮しました:
1)データベースIDをフロントエンドに送り返します。変更を処理するには、これらを返送する必要があります
2)ハッシュ化されたID(データベースIDに基づく)をフロントエンドに送り返します。変更を処理するには、これらを返送する必要があります。
3)クライアントにIDの送信を強制せずに、元のエンティティと新しいエンティティを送信させ、データベース内のエンティティに「一致」させます。それらの元のエンティティは、保存されたエンティティと一致する必要があります。また、エンティティと新しいエンティティの一致を構成するものを定義する必要があります。