Я разрабатываю API для обновления записи в базе данных, и мы знаем, что у нашего вызывающего приложения есть первичный ключ записей в целевой системе, но целевая система не позволяет нам обновляться с использованием первичного ключа - требуетсянесколько значений для идентификации записи (скажем, цвет, форма и размер, для аргументации).Вызывающая система также имеет эти значения, однако мне сообщили, что это не может быть на 100% надежным.
Я вижу, что у нас есть два варианта:
- Доверяйте значениям, предоставляемымвызывающей системы и передайте их непосредственно целевой системе.
- ПОЛУЧИТЕ запись, используя Первичный ключ для получения значений составного ключа, а затем используйте их для выполнения обновления.
Опция2 кажется более надежным, поскольку в случае, если наш GET возвращает 0 или> 1 результатов, мы можем заранее принять решение не обновлять.Недостатком является то, что дополнительный вызов увеличит задержку и т. Д.
Я понимаю, что REST не имеет жестких и быстрых правил для многих подобных ситуаций, но мне интересно, могу ли япропуская любые подводные камни в любом подходе.