HTTP/1.1标准规定,如果POST操作导致创建资源,则响应应包括Location头部,其中包含新资源的地址。
如果在源服务器上创建了资源,则响应应为201(已创建),并包含描述请求状态和引用新资源的实体,以及Location头部(参见第14.30节)。
而在第14.30节中:
对于201(已创建)响应,Location是由请求创建的新资源的位置。
现在假设我的API允许通过将数组POST到集合资源URL来批量创建资源。例如:
POST /books
[
{
"name": "The Colour of Magic",
"published": "1983"
},
{
"name": "The Light Fantastic",
"published": "1986"
}
]
既然已经创建了两个\book\{bookId}
资源,那么在这种情况下Location
头的值应该是什么?
这个问题Http post response after multiple new resource creation?相似,但它询问的是响应实体,而不是头部(且未被回答)。