Katharsis Json Api restrict PATCH



我正在我的Spring Boot服务器中使用Katharsis库来自动构建JSON-API接口。

假设我有一个端点(resource)/resources,我想为它提供POST方法(创建新资源),但限制PATCH(限制资源更新)。同时,io.katharsis.repository.ResourceRepository只提供save()方法,该方法适用于POST和PATCH。

我目前唯一的想法是向FilterChain添加另一个过滤器,该过滤器将禁止PATCH所需的端点。

有没有更好的方法(即更短或更优雅)来实现这一点?

要禁用PATCH方法,您应该按照以下步骤操作:

  1. 检查数据库中是否存在在请求的URL中提供ID的对象
  2. 如果对象存在,则抛出UnsupportedOperationException

PATCH包含ID。
所以你可以检查ID!=null并引发错误
通过这种方式,您不需要检查数据库
此解决方案假定您不在客户端上生成id。

相关内容

  • 没有找到相关文章

最新更新