1

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

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

4

1 回答 1

0

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

<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>

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

于 2013-09-20T12:32:35.333 回答