http - RESTful 数据结构模式

标签 http design-patterns rest data-structures

我到处都尝试使用谷歌搜索和搜索,但找不到有关该主题的权威资料。在忠实于 REST 原则的同时,我应该如何设计 HTTP 接口(interface):

  1. 有序列表(获取、添加、插入位置、重新排序、删除)

  2. 一组(获取、添加、删除)

  3. 哈希表(获取、添加、删除)

注意:这些数据结构将包含对具有已知 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/

相关文章:

javascript - 如何正确设计后端结构来处理消息服务?

http - 我无法从 curl 命令返回 get 200 响应

reactjs - 在 React 中使用 Safari 而不是 Chrome 接收 401 状态

ruby-on-rails - 如何同时以 GET 和 POST 方式传递值?

java - 与接口(interface)隔离原则相反

design-patterns - 分别与工厂方法模式和抽象工厂模式相比,简单工厂的缺点是什么?

没有 if-else block 的 JavaScript 工厂模式

java - 如何区分客户端请求返回我的 REST Web 服务的格式?

python - 将 CVS/SVN 转换为编程片段站点

api - 使用 VersionOne 的 RESTful API 重新排列故事