В большинстве примеров API RESTful предполагается, что вы имеете дело с коллекциями вещей, например
POST /books/
- создайте книгу
GET /books/
- получите список книг
GET /books/1/
- получить конкретную книгу
Однако, есть некоторые обстоятельства, когда вы можете захотеть создать одноэлементный ресурс.Например, новый пользователь может захотеть создать профиль, относящийся к себе, аутентифицированному пользователю.
POST /profile
PUT /profile
Существует ли какое-либо соглашение о том, каксоздать такие синглтон ресурсы?то есть используя POST
против PUT
.С точки зрения того, использовать ли POST
или PUT
, имеет ли значение, если ресурс может быть изменен после создания?Требует ли требование идемпотентности PUT
, что должна быть возможность обновления ресурса после его первого создания?