次のような単純なリソースがあります。
/api/{configuration}/exhibitors/{id}
これは一般に、URL の構成部分の設定に応じてパブリック API です。
これは、認証されていないユーザーに返される場合があります。
{ "a" : "some value", "b" : "other value" }
しかし、管理者がログインしてこのリソースを取得したい場合、同じリソースでわずかに異なるデータが期待されます。
{ "a" : "some value", "C" : "admin only value" }
この管理者権限を検出して、同じ URL から別のコンテンツを返す必要がありますか?
それとも、誰向けで、コンテンツが異なる可能性があることを示す新しい URL を用意する必要がありますか?
/api/admin/{configuration}/exhibitors/{id}
私の考えでは、余分な URL は好きではありませんが、ユーザーに応じてコンテンツを変更する可能性がなければ、パブリック コンテンツをより簡単にキャッシュできるようになります。
admin 呼び出しがリソースの完全な公開バージョンと追加の管理者専用フィールドを取得できない理由はありませんが、私の例ではフィールド "b" はおそらく実際には必要ないので、むしろ管理者表現を使用したいと思います。少し軽くなりました。