gpt4 book ai didi

java - 我可以使用拦截器检查 JAX-RS 应用程序中的 http header 吗?

转载 作者:行者123 更新时间:2023-12-02 05:06:51 26 4
gpt4 key购买 nike

@Context HttpHeaders 应该在 Interceptor 中工作吗?

我创建了一个 RestfulClasses 类,它扩展了 javax.ws.rs.core.Application 并对其进行了注释 @javax.ws.rs.ApplicationPath( "/api") - 所有非常标准的东西。

我还有一个类,添加它来处理特定路径,它本身工作正常。问题是我想检查传入的 HTTP header ,使用拦截器听起来很完美。

我的拦截器类声明了一个@Context HttpHeaders httpHeaders,但是在@AroundInvoke 方法中这个属性是空的。

我应该期望它起作用还是我遗漏了什么?还有别的办法吗?

最佳答案

我找到了一种使用拦截器的方法:扩展具有成员的基类:

 @Context protected HttpHeaders headers;

还有一个@AroundInvoke 方法,它在调用任何方法之前检查 header 。虽然它并不十分优雅。

Artem 的解决方案也有效,但我是该平台的新手,之前没有遇到过 servlet 过滤器。它更优雅,虽然我仍然更喜欢注释而不是 web.xml 标记...

关于java - 我可以使用拦截器检查 JAX-RS 应用程序中的 http header 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10333667/

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