Java Controller中获取请求的header有哪些途径,其提供示例代码
时间: 2024-02-18 22:03:49 浏览: 140
JAVA获取HTTP请求头的方法示例
在Java Controller中获取请求的header,可以通过以下途径实现:
1. 通过HttpServletRequest对象获取header
```java
@RequestMapping("/test")
public void test(HttpServletRequest request) {
String headerValue = request.getHeader("headerName");
// ...
}
```
2. 通过@RequestHeader注解获取header
```java
@RequestMapping("/test")
public void test(@RequestHeader("headerName") String headerValue) {
// ...
}
```
3. 通过@RequestHeader注解获取header并设置默认值
```java
@RequestMapping("/test")
public void test(@RequestHeader(value = "headerName", defaultValue = "defaultHeader") String headerValue) {
// ...
}
```
以上是常用的获取请求header的方式,当然还有其他方式,比如通过Filter拦截器等。
注意:在获取header时需要注意header名称的大小写,以及header可能不存在的情况。
示例代码:以下为通过HttpServletRequest对象获取header的示例代码。
```java
@RequestMapping("/test")
public void test(HttpServletRequest request) {
String token = request.getHeader("Authorization");
if (token == null) {
// token不存在的处理逻辑
} else {
// token存在的处理逻辑
}
}
```
阅读全文