gpt4 book ai didi

spring - 在 SpringDataRest 中,如何在收到 http 请求时添加自定义逻辑

转载 作者:可可西里 更新时间:2023-11-01 17:22:28 26 4
gpt4 key购买 nike

据我们所知,在 SpringDataRest 中,仅使用存储库文件(不使用 Controller ),我们可以为它使用内置方法。

我的存储库代码是:

public interface StudentRepository extends JpaRepository<Student, Integer> {
}

我不想添加自定义方法并在那里添加我的请求处理逻辑。我想要一些配置或事件覆盖,我可以在其中处理 HttpRequest 处理程序、解析 token 并检查 token 中的一些数据,然后根据该 token 我将决定处理该请求或因某些错误而丢弃它。

谢谢。

最佳答案

如果您想使用 spring data rest 限制对特定端点或操作的访问,并且您正在使用 spring security,那么您可以使用 @PreAuthorize annotation使用 hasRole。以 'Securing Spring Data REST PreAuthorize' 为例,你可以有一个像这样的 CrudRepository:

@PreAuthorize("hasRole('ROLE_USER')")
public interface ParkrunCourseRepository extends CrudRepository<ParkrunCourse, Long> {
@Override
@PreAuthorize("hasRole('ROLE_ADMIN')")
ParkrunCourse save(ParkrunCourse parkrunCourse);
}

然后只有具有管理员角色的用户才能发布帖子以保存这些实体。

关于spring - 在 SpringDataRest 中,如何在收到 http 请求时添加自定义逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51925791/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com