Как мне обрабатывать автоматически сгенерированные идентификаторы в RESTful API? - PullRequest
0 голосов
/ 12 апреля 2011

При разработке RESTful API, в котором используется хранилище данных, в котором используются автоматически сгенерированные идентификаторы (в противном случае нет надежных уникальных значений), как мне указать операцию добавления (PUT)?

Например:

GET /widgets/

Вернет список всех виджетов.

GET /widgets/123

Возвращает информацию для определенного виджета.

POST /widgets/123

Обновил бы виджет.

Но каков URL для добавления виджета?

PUT /widgets/???

То есть, я (как клиент) не знаю идентификатор, пока не добавлю его.

1 Ответ

1 голос
/ 12 апреля 2011

Соглашения REST обычно определяют POST для создания и PUT для обновления.Это потому, что PUT вместе с GET и DELETE являются идемпотентными методами.Это означает, что они могут запускаться любое количество раз, и состояние сервера должно быть одинаковым.POST - неидемпотентное действие, однако это означает, что состояние сервера не всегда будет одинаковым после выполнения действия каждый раз.

Обычно вы добавляете POST к URL-адресу /widgets, чтобы добавить элемент.

См. это для более подробной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...