我正在尝试使用 Jersey(与 Spring 一起运行)实现一些自定义身份验证。我已经使身份验证逻辑正常工作并将其放置在 ContainerRequestFilter 中。
我当前遇到的问题是如何在身份验证失败时实际拒绝或重定向请求,而无需向每个端点方法添加自定义代码片段。
我尝试更改 ContainerRequestFilter 过滤器方法中的 URI 和方法类型,但它不起作用。尽管请求的属性发生了更改,即使身份验证失败,Jersey 仍会执行原始方法。
我可以在每个方法中添加一个片段来检查身份验证是否失败,如果失败,则退出该方法,但这种方式首先就破坏了使用过滤器的全部意义......
我该如何处理这种情况?
最佳答案
如果身份验证失败,请抛出 WebApplicationException 以及您希望从请求过滤器返回给客户端的所需响应。
关于java - 服务器上的自定义身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8220234/