我正在开发一个使用 JAX-RS/Jersey 和 Spring 用 Java 编写的 Web 服务。
WS 在用户登录时对用户进行身份验证,并返回具有有限生命周期的访问 key 。大多数可用方法都需要有效的“访问 key + userId”组合。
对于所有可用的方法,我使用 @FormParam 来检索 POST 参数,并且响应采用 JSON 格式。我想弄清楚的是如何避免打字
@FormParam("userId") final Integer userId,
@FormParam("accessKey") final String accessKey
并为我将拥有的可能需要身份验证的 20 种方法中的每一种手动调用我的身份验证方法。这特别麻烦,因为我还必须添加代码来处理例如访问 key 已过期。
是否有另一种方法可以检索上述两个参数并执行身份验证,以便我可以保持方法干净?
最佳答案
由于您使用的是 Jersey,因此您可以使用类似 servlet 过滤器的 API 来干燥您的代码。查看:
关于java - 使用 JAX-RS/Jersey 以多种方法进行身份验证 - 如何保持干净?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11805312/