全部学科
Python全栈
python
NodeJS全栈
nodejs
小程序首页
📅 2026-05-18 6 分钟 ✍️ juanwangdev

请求头与Cookie

SpringMVC提供专门注解获取HTTP请求头和Cookie信息。

RequestHeader

获取请求头信息。

基本使用

Java
@Controller
public class DemoController {

    @GetMapping("/header")
    public String getHeader(
        @RequestHeader("User-Agent") String userAgent,
        @RequestHeader("Accept") String accept
    ) {
        System.out.println("User-Agent: " + userAgent);
        System.out.println("Accept: " + accept);
        return "success";
    }
}

常用属性

Java
@GetMapping("/info")
public String info(
    @RequestHeader(value = "Content-Type", required = false) String contentType,
    @RequestHeader(value = "Authorization", defaultValue = "") String auth
) {
    return "success";
}
属性说明
value请求头名称
required是否必填,默认true
defaultValue默认值

获取所有请求头

Java
@GetMapping("/headers")
public String headers(@RequestHeader Map<String, String> headers) {
    headers.forEach((k, v) -> System.out.println(k + ": " + v));
    return "success";
}

CookieValue

获取Cookie值。

基本使用

Java
@Controller
public class SessionController {

    @GetMapping("/session")
    public String getSession(@CookieValue("JSESSIONID") String sessionId) {
        System.out.println("Session ID: " + sessionId);
        return "success";
    }
}

常用属性

Java
@GetMapping("/token")
public String getToken(
    @CookieValue(value = "token", required = false, defaultValue = "") String token
) {
    System.out.println("Token: " + token);
    return "success";
}
属性说明
valueCookie名称
required是否必填
defaultValue默认值

常用请求头

请求头说明
User-Agent客户端信息
Accept接受的内容类型
Content-Type请求体类型
Authorization认证信息
Host主机名
Referer来源页面

请求头不存在且required=true时,抛出ServletRequestBindingException异常。

要点总结

  • @RequestHeader:获取请求头,value指定名称
  • @CookieValue:获取Cookie值,value指定名称
  • 两者都支持required和defaultValue属性
  • 可使用Map接收所有请求头

📝 发现内容有误?点击此处直接编辑

← 上一篇 日期类型转换进阶
下一篇 → 请求接收与参数绑定综合
想查看更多题目和详细解析?
小程序提供完整的题库、模拟考试和详细解析
马上就来

长按或扫描二维码,立即体验

扫码体验小程序
马上就来
使用微信扫描二维码
立即体验完整题库