REST - 如何以不同方式在集合中创建条目?

时间:2016-05-06 20:34:44

标签: rest post httpverbs

我需要支持将组件添加到组件集合的不同方法:

  • 添加“blank”组件,
  • 添加组件,该组件是类的实例< / li>
  • 添加一个组件,该组件是另一个组件的副本(粘贴)。
    每种方式都需要用户提供不同的数据。

    集合上的POST似乎很自然,但我如何支持添加组件的不同方法?似乎一个动词(POST)不足以描述所需的3个不同操作(添加新的,添加实例,添加副本)。

    如何以RESTful方式实现这一目标?

  • 1 个答案:

    答案 0 :(得分:0)

    如果您描述的不同方式创建了相同的“种类”资源,那么我可以通过以下方式进行成像(如果不是,这些方式应该是不同的集合):

    一种方法是使用单个表示来描述如何创建给定资源,如:

    {
       "copy": {
           "href": "copy-from-this-uri"
       },
       "instance-of": "something"
    }
    

    将其留空以创建空资源等。另一种方法是对同一mime-types的3个不同用例使用完全不同的POST