Я использую библиотеку Katharsis на моем сервере Spring Boot для автоматического создания интерфейса JSON-API.Katharsis Json Api ограничивает PATCH
Предположим, у меня есть конечная точка (ресурс)/ресурс, для которой я хотел бы предложить метод POST (для создания новых ресурсов), но ограничить PATCH (чтобы ограничить обновление ресурсов). Между тем, io.katharsis.repository.ResourceRepository предлагает только метод save(), который применяется как к POST, так и к PATCH.
Моя единственная идея на данный момент - добавить еще один фильтр в FilterChain, который запретит PATCHing нужной конечной точке.
Есть ли лучшие (т. Е. Более короткие или более элегантные) способы достижения этого?
Спасибо за подсказку! Разве это так JsonApi рекомендует? Я сомневаюсь: зачем мне даже спрашивать базу данных? Я знаю, что PATCH не поддерживается вообще, независимо от того, что находится в базе данных. Таким образом, это звучит как один дополнительный вызов базы данных, который можно пропустить, не так ли? После того, как я снова прочитал свой вопрос - может быть, недостаточно ясно, я исправлю его. – ppi
Кроме того, я был бы очень признателен за короткое объяснение, почему это решение лучше, чем добавление фильтра. Заранее спасибо! – ppi
Использование фильтра будет более подходящим, если вы хотите отключить патч для всех запросов, и я предполагаю, что вы не хотите этого делать. Учитывая пропущенный первый шаг - в случаях производственного развертывания с огромными объемами транзакций и запросов, предположительно, только уровень БД будет знать, действительно ли объект уже существует. Это в основном для согласованности данных. – masterspambot