我们正在为移动设备设计一个数据驱动的web应用程序,使用jQuery移动作为界面。使用RESTful接口获取数据有意义吗?我可以看到,拥有路径为RESTful的网站是多么有用,因为用户可以轻松地操作路径和交叉导航,但如果AJAX调用都对用户隐藏(除了让其他开发人员容易理解该API之外),REST会带来任何好处。
我之所以问这个问题,是因为我不确定REST是否正确地使用HTTP。例如,在以下示例中: 1. / /product?id=12345 /12345/ 2. RESTful选项1更多地是RESTful,但2更符合HTTP,因为标准浏览器就是这样提交的。在jQuery中,您甚至可以将表单的元素序列化为AJAX请求,结果是一个查询字符串,而不是路径。要获得REST URL,您总是需要操作标准URL格式,这是额外的代码,并没有真正的好处。REST是完全忽略查询字符串,还是只用于查询,即搜索?
发布于 2011-10-26 23:10:33
就休息而言,绝对没有差别。在RFC 2396中有一条线
The query component is a string of information to be interpreted by the resource.
后来在RFC 3986中将其更改为:
The path component contains data, usually organized in hierarchical form, that,
along with data in the non-hierarchical query component, serves to identify a
resource (Section 3.3)
所以现在两者是等同的,但正如你所说的
“除了使API更容易让其他开发人员理解”
您肯定不是有意对此掉以轻心,这应该是您编写的任何代码中最重要的一件事。
发布于 2011-10-26 22:56:18
REST标识资源的位置,而不是该资源的属性。因此,当您将更改提交到REST对象时,可以发布它们或使用查询字符串。客户端没有多少实际好处,但它确实使后端更易于测试和管理。
https://stackoverflow.com/questions/7912495
复制相似问题