簡単に説明します。Restful URI は次のようなものです。
example.com/rest/customer/1
「1」が何であるかについての最も一般的な方法は何ですか。データベースで生成された主キーですか?
システムで生成された主キーを使用すると、次のことには役立たないと思います。
- データベースのマージ
- データのインポート/エクスポート
主キーを使用しないことには、独自の問題があります。このトピックに関する一般的な考えを探しています。
簡単に説明します。Restful URI は次のようなものです。
example.com/rest/customer/1
「1」が何であるかについての最も一般的な方法は何ですか。データベースで生成された主キーですか?
システムで生成された主キーを使用すると、次のことには役立たないと思います。
主キーを使用しないことには、独自の問題があります。このトピックに関する一般的な考えを探しています。
それがレコードを識別する方法であるため、IDが主キーになると思います。必要に応じて、代理キーである ID ではなく、誰かの従業員 ID などの自然な主キーを使用できます。
問題がデータベースの主キーではなく整数である場合 (したがって、推測可能だと思います)、代わりにGUIDを使用できます。それらは、アプリケーションまたはDBのいずれかで、クライアント側またはサーバー側で生成できます。
それらはデータベースのマージなどに役立ち、一意であることが保証されています。
一般的に、それは問題ではありません。
ただし、ID だけでなく、一意の識別子として常に href を消費者に返す必要があります。ID を返すだけの場合、リソースが存在する場所を知り、その情報を ID と組み合わせて、リソースに対する一意の要求を作成する必要があることを意味します。それらの href を返すと、結合が解消されます。