我正在编写一个WEB API项目,我使用OData来进行资源查询.该服务应该是RESTful.但由于URI格式,我不确定OData是否是RESTful.
在任何地方我看起来REST URI格式都是这样的
http://example.com/resources/142
Run Code Online (Sandbox Code Playgroud)
但OData URI格式应该是这样的
http://example.com/resources(142)
Run Code Online (Sandbox Code Playgroud)
我不确定两者是否适合REST或OData不完全RESTful.
如果您正在编写的服务应该是RESTful,并且您担心URI格式,那么您应该对该主题进行一些研究,因为URI语义与REST完全无关.
REST对URI施加的唯一约束是它们被视为原子标识符,这意味着它们不能被分割成部分以便被理解,并且一个URI标识一个且仅一个资源.除此之外,URI语义和格式无关紧要.REST最重要的是客户端如何获取URI.如果他们从文档中读取URI模式并使用值填充占位符,那么这不是RESTful.你应该对HATEOAS做一些研究,如果这对你来说是新的.