我想根据访问权限为不同用户提供对同一问题的不同答案。我读了这个问题:
但我不同意接受的答案,它指出您应该同时提供/people.xml
和/unauthenticated/people.xml
,因为我对 REST 的理解是特定资源应该存在于特定位置,而不是几个取决于您感兴趣的信息量在。
我正在设计的系统比那个系统还要复杂。假设用户创建了多个朋友圈,并为他们分配了不同的访问权限。例如,我的“熟人”圈子可能可以访问我的生日,而我的“专业”圈子可能可以访问我的工作经历,但反之则不行。为了应用我提到的问题的答案,我需要有一种方法来获取所有用户的圈子(出于安全原因我可能想保密),然后通过/circles/a/users/42
, /circles/b/users/42
,/circles/c/users/42
等等,然后合并结果以显示最大数量的可用信息。显然,不一定有一个圈子可以获得其他圈子获得的所有信息。我相信这已经够棘手了(请注意,我可能需要对几种对象执行此操作,并且将来的版本可能需要不同的过程),但是如果我想对特定用户施加安全限制,尽管事实上他也是在我的某些圈子里?这个问题还能解决吗?即使我拒绝回答上述任何问题并提出一个可以给我答案的新问题,它仍然会揭示这样一个事实,即由于个人访问限制,该特定用户会受到不同的对待。
我在这里想念什么?我是否有可能开发 RESTful Web 服务?
如果结论是该行为不是 RESTful 的,那么这是否仍然构成违反 REST 合同在道德上可以接受的情况?如果是这样,有什么负面影响?例如,我是否会冒代理缓存问题的风险?