java – 在spring-data-rest中防止HTTP方法

我正在使用
spring-data-rest.

给出以下存储库:

@RepositoryRestResource
public interface MyRepository extends PagingAndSortingRepository<MyEntity, Long> {}

save()方法上的注释@RestResource(exported = false)使框架在使用POST,PUT和PATCH方法时返回405 Method Not Allowed错误.

我的问题:如何在PUT方法上返回405错误,而此存储库仍然允许POST和PATCH?

谢谢 !

最佳答案 @SWiggels

感谢您的答复 :)

你的解决方案对我不起作用……总是允许PUT.

对于其他人,我发现这个有效:

@BasePathAwareController
public class MyEntityController {

    @RequestMapping(value = "/myentity/{id}", method = RequestMethod.PUT)
    public ResponseEntity<?> preventsPut() {
        return new ResponseEntity<>(HttpStatus.METHOD_NOT_ALLOWED);
    }
}
点赞