0

HTTP 基本認証またはダイジェスト認証を必要とするサービスを設計しています。リソース識別子の一部として HTTP 資格情報を使用することの長所と短所を比較しようとしています。認証された各ユーザーが連絡先のリストを持っているとします。連絡先は次のように利用できる必要があります。

https://myservice.com/contacts

というより:

https://myservice.com/users/112358/contacts

?

このサービスの場合、ユーザーを隔離する必要があります。あるユーザーが別のユーザーに関連付けられている連絡先やその他の情報にアクセスする必要はありません。このため、最初のアプローチは URL で必要な情報のみを公開するため、よりクリーンに見えます。一方、異なる HTTP クレデンシャルの場合https://myserevice.com/contactsは、異なるリソースになりますが、これが適切な設計かどうかはわかりません。

4

2 に答える 2

1

質問の最後で引用したのと同じ理由で、/contacts提供された資格情報に応じて異なるリソースを表すため、2 番目の長いオプションを使用することをお勧めします。ユーザーはこれらの URL を覚えて、ブラウザーに入力する必要がありますか? そうでない場合、長さと「可愛さ」は重要な要素ではありません。

/contactsそのユーザー自身の連絡先への一時的なリダイレクトをいつでも返すことができることを忘れないでください。

于 2012-11-24T13:14:38.910 に答える
1

私は一緒に行きhttps://myservice.com/users/112358/contactsます。

ある時点で他のユーザーが表示できる可能性のあるユーザーの「下」にリソースがある可能性があるという理由だけで。たとえば、ユーザー X はユーザー 112358 のドキュメントを表示できます。

URI の一貫性は利点です。HATEOASを使用すると、URI の一貫性が外部ではあまり問題にならない場合でも、API の実装を拡張および維持するのに役立ちます。

于 2012-11-24T12:32:48.540 に答える