用于奇异和大量资源创建的多个端点

时间:2013-09-19 22:06:16

标签: api rest

我目前正在实施REST API,对于某些资源子集,需要支持所述资源的单一和批量创建。我试图决定是否有必要公开两个单独的端点:一个用于单个创建,一个用于批量创建。

例如,我们假设我有一个地址资源。我可以通过将该资源的表示形式发布到URI /address来创建单个地址。如果我想支持批量创建,那么让/address端点识别是否有多个表示被POST到该端点然后采取适当的操作(单个创建或批量创建),或者是最好有一个完全独立的端点,只接受批量创建?

1 个答案:

答案 0 :(得分:0)

我的方法是允许POST到/地址的对象可以包含多个地址定义。在后端,您遍历对象并创建一个或多个地址。所以身体会是这样的:

<addresses>
    <address>
        <street>123 Maple Lane</street>
        <city>Newark</city>
        <state>NJ</state>
        <zip>00000</zip>
    </address>
    <address>
        <street>227 First Avenue</street>
        <city>Tulsa</city>
        <state>OK</state>
        <zip>00000</zip>
    </address>
</addresses>

我会避免单独的端点,因为没有理由。如果您只在集合中发布一个地址,则只创建一个地址。