Spring @RequestHeader 教程展示了如何使用@RequestHeader 注解将方法参数绑定到请求标头。
Spring 是用于创建企业应用的流行 Java 应用框架。
Spring @RequestHeader
@RequestHeader
注释将请求标头值绑定到方法参数。 如果方法参数为Map
,MultiValueMap<String, String>
或HttpHeaders
,则将使用所有标头名称和值填充映射。
Spring @RequestHeader
示例
该应用将请求正文标头绑定到方法参数。 使用curl
工具创建请求。
这是项目结构。
pom.xml
我们在pom.xml
中声明必要的依赖关系。
resources/logback.xml
logback.xml
是 Logback 日志库的配置文件。
com/zetcode/config/MyWebInitializer.java
MyWebInitializer
注册 Spring DispatcherServlet
,它是 Spring Web 应用的前端控制器。
com/zetcode/config/WebConfig.java
WebConfig
通过@EnableWebMvc
启用 Spring MVC 注解,并为com.zetcode
软件包配置组件扫描。
com/zetcode/controller/MyController.java
我们有两个映射。 第一个映射确定用户代理,第二个映射找出所有发送的请求标头。
使用@RequestHeader
的 value 参数,我们查找特定的标头; 在我们的例子中是User-Agent
。
提供地图时,我们会检索所有标头。
我们启动服务器。
我们创建对第一个映射的请求。
我们得到这个日志。
我们调用第二个映射。
我们记录了三个标头。
在本教程中,我们使用@RequestHeader
注解将请求标头绑定到方法参数。