アクセス権に基づいて、異なるユーザーに対して同じ質問に対して異なる回答を提供したいと考えています。私はこの質問を読みました:
しかし、REST についての私の理解では、特定のリソースは特定の場所に存在する必要があり、関心のある情報の量に応じて複数存在する必要があるため、/people.xml
との両方を提供する必要があるという受け入れられた回答には同意しません。/unauthenticated/people.xml
の。
私が設計しているシステムは、あのシステムよりもさらに複雑です。ユーザーが多数の友達のサークルを作成し、それらにさまざまなアクセス権を割り当てたとします。たとえば、私の「知人」サークルは私の誕生日にアクセスでき、「専門職」サークルは私の職歴にアクセスできるかもしれませんが、その逆はできません。私が言及した質問からの回答を適用するには、ユーザーのすべてのサークルを取得する方法が必要です (セキュリティ上の理由から秘密にしておく必要があるかもしれませ/circles/a/users/42
ん/circles/b/users/42
) /circles/c/users/42
。結果をマージして、利用可能な最大量の情報を表示します。明らかに、他のサークルが取得するすべての情報を取得する単一のサークルが必ずしも存在するわけではありません。これは十分にトリッキーだと思います (おそらく、いくつかの種類のオブジェクトでこれを行う必要があり、将来のバージョンでは別の手順が必要になる可能性があることに注意してください) 。私のサークルのいくつかで?その問題も解決できますか?上記のクエリのいずれにも応答することを拒否し、回答を得ることができる新しいクエリを思いついたとしても、この特定のユーザーが個々のアクセス制限のために異なる方法で扱われているという事実が明らかになります.
ここで何が欠けていますか?RESTful Web サービスを開発することは可能ですか?
動作が RESTful ではないという結論が得られた場合、これは依然として REST 契約を破っても道徳的に問題ない状況として構成されますか? もしそうなら、マイナスの影響は何ですか?たとえば、プロキシ キャッシュの問題のリスクはありますか?