需要feedbck提供REST URL的质量
要获取(登录用户的)最新有效地址,以下URL的RESTful程度如何需要feedbck提供REST URL的质量,rest,Rest,要获取(登录用户的)最新有效地址,以下URL的RESTful程度如何 GET /addresses/valid/latest 大概 GET /addresses?valid=true&limit=1 是最好的,但是它应该返回一个列表。我想返回一个对象,而不是一个列表 还有其他建议吗?您的url结构与RESTful的功能没有多大关系 因此,让我们假设哪一个是“最好的”。也有点难说,很主观 我通常会避免像/addresses/valid/latest这样的模式。这表明在“有效集合”和“地
GET /addresses/valid/latest
大概
GET /addresses?valid=true&limit=1
是最好的,但是它应该返回一个列表。我想返回一个对象,而不是一个列表
还有其他建议吗?您的url结构与RESTful的功能没有多大关系 因此,让我们假设哪一个是“最好的”。也有点难说,很主观 我通常会避免像
/addresses/valid/latest
这样的模式。这表明在“有效集合”和“地址集合”中有一个“最新资源”
所以我更喜欢你的另一个建议,因为它建议你使用一个“地址”集合,按有效项过滤,只显示1
如果您不需要所有类型的参数,我会更倾向于找到一个url模式,它不是字面上的“地址,而是有效的,但只是最新的”,但想想端点的用途是什么。也许是更容易记住的东西,比如/fresh address
=)
以下URL的RESTful程度如何
GET /addresses/valid/latest
满足RFC3986所描述的条件的任何标识符都是RESTful的
通用组件不应该从标识符派生语义,它们是不透明的。这意味着服务器可以自行将信息编码到这些标识符中
考虑:您的浏览器是否关心将什么URI用作搜索表单的目标?您的浏览器是否关心谷歌为每个搜索结果提供的href?在这两种情况下,浏览器只执行它被告知的操作,也就是说,它根据服务器提供的应用程序状态表示创建HTTP请求
URI与编程语言中的变量名属于同一大类——只要拼写与一些简单约束一致,机器就不在乎。人们关心这个问题,因此拥有一个本地一致的逻辑方案有一些好处
但在某些上下文中,容易猜测的URI并不是您想要的。看
由于URI的语义内容仅保留给服务器使用,因此服务器可以选择将该信息编码为路径段或查询部分。或者两者兼而有之
可以用a来描述的拼写可能非常强大。最常见的URI模板可能是使用
GET
方法的HTML表单,它将键值对编码到URI的查询部分;因此,您应该考虑这是否是您想要支持的用例。GET:/addresses/latest/?valid=true如何