[英]Best rest api naming convention for resources with association
以下是我的其余终点。 我希望用户调用第一个端点,对于后续调用,我希望用户ID在请求中。 有什么最好的方法来达到这个目的?
1. POST www.test.com/v1/users (return userid)
2. POST www.test.com/v1/services
3. PUT www.test.com/v1/services/{serviceId}
4. DELETE www.test.com/v1/services/{serviceId}
5. GET www.test.com/v1/services?search="search string for dynamic query"
6. PATCH www.test.com/v1/services/{serviceId}/{state}
这取决于您的域名以及您想要表达的内容。 通常,用户凭据是标头的一部分。 但是,如果你想明确这一点,你可以使它成为网址的一部分:
/v1/{userId}/services/
通常我使用聚合 vs 组合来决定它是否是嵌套资源。
进一步的调用可能会在请求标头中有www.test.com/v1/users
返回的用户标识(应加密?)。
如果您不需要将userId公开给用户,您可以使用任何编码器并生成哈希值(该登录会话/会话ID唯一的个人访问令牌)。 每次发出后续请求时,都可以验证会话ID并继续进行进一步操作。
而且,我觉得后者应该是你的方式。 另外,尝试根据生成的会话ID设置会话保持活动时间。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.