我尝试谷歌搜索并到处搜索,但找不到关于这个主题的权威。在忠于 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/

    10-09 14:13