我到处都尝试使用谷歌搜索和搜索,但找不到有关该主题的权威资料。在忠实于 REST 原则的同时,我应该如何设计 HTTP 接口(interface):
有序列表(获取、添加、插入位置、重新排序、删除)
一组(获取、添加、删除)
哈希表(获取、添加、删除)
注意:这些数据结构将包含对具有已知 ID 的现有资源的引用
最佳答案
对于有序列表和哈希表,我就是这样做的。我想集合和列表的方法是一样的:
有序列表
获取项目 123:
GET /list/123
向列表添加一个项目:
POST /list/
将新项目插入位置 5:
POST /list/?position=5
将项目 123 移动到位置 3:
PUT /list/123?position=3
删除项目 123:
DELETE /list/123
删除位置 3 的项目:
DELETE /list/?position=3
当然,您的 API 应该在进行插入和删除操作时更新所有元素的索引。
哈希表
获取项目“somekey”:
GET /hashtable/somekey
添加项目“somekey”:
POST /hashtable/somekey
删除项目“somekey”:
DELETE /hashtable/somekey
关于http - RESTful 数据结构模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10976399/