All streams
Search
Write a publication
Pull to refresh
3
0
Send message

Да, можно и через PUT, но с его использованием возможна накладка с ID ресурса.

a) PUT/id = set (if doesn’t exist then throw), POST + idempotency key = create if doesn’t exist

b) PUT/id = if doesn’t exist then create else set. ID ресурса будет генерироваться клиентом. И тогда для изоляции клиентов понадобится уникальность id в рамках клиента (чтобы клиент вовсе не знал о других клиентах), либо требовать от клиентов глобальной уникальности используемых id (как с username на некоторых сайтах).

Спасибо, хорошая идея для улучшения ​

Смотри шире, это же не только про форму и пользователя. В довольно стандартной интеграции микросервисов через transaction outbox одна из основных вещей - воспроизводимость и идемпотентность.

Или блокировка на вставку. Но только пост не про это. Но раз есть запрос, подумаю над дополнением с обзором методов синхронизации, спасибо

Information

Rating
Does not participate
Registered