Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
需要feedbck提供REST URL的质量_Rest - Fatal编程技术网

需要feedbck提供REST URL的质量

需要feedbck提供REST URL的质量,rest,Rest,要获取(登录用户的)最新有效地址,以下URL的RESTful程度如何 GET /addresses/valid/latest 大概 GET /addresses?valid=true&limit=1 是最好的,但是它应该返回一个列表。我想返回一个对象,而不是一个列表 还有其他建议吗?您的url结构与RESTful的功能没有多大关系 因此,让我们假设哪一个是“最好的”。也有点难说,很主观 我通常会避免像/addresses/valid/latest这样的模式。这表明在“有效集合”和“地

要获取(登录用户的)最新有效地址,以下URL的RESTful程度如何

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如何