Как вернуть сгенерированный идентификатор в RESTful POST?

Допустим, у нас есть сервис для добавления нового отеля:

> POST /hotel
> <hotel>
>   <a>aaa</a>
>   <b>aaa</b>
>   <c>aaa.......this is 300K</c>
> </hotel>

И тогда мы получаем:

> GET /hotel

< HTTP/1.1 200 OK
< <hotel>
<   <a>aaa</a>
<   <b>aaa</b>
>   <c>aaa.......this is 300K</c>
< </hotel>

Вопрос в том, что мы возвращаем для первоначального создания POST? Мы хотели бы вернуть идентификатор (сгенерированный на сервере) для «ссылки» на новый ресурс, но мы не хотим возвращать все данные отеля, поскольку в нашем случае одно из полей данных представляет собой плоский файл размером ~ 300 КБ ,

Так что вы должны просто вернуться:

< HTTP/1.1 200 OK
< <hotel>
<   <id>123</id>
< </hotel>

Или вы должны вернуть полный объект:

< HTTP/1.1 200 OK
< <hotel>
<   <id>123</id>
<   <a>aaa</a>
<   <b>aaa</b>
>   <c>aaa.......this is 300K</c>
< </hotel>

??

Я заинтересован в спокойной лучшей практике.

Примечание: это связаноПочта больше говорит о том, что вернуть, но меньше о том, как вернуть.

Ответы на вопрос(3)

Ваш ответ на вопрос