注解:
1. @RequestHeader
使用@RequestHeader可以获得请求头信息,相当于web阶段学习的request.getHeader(name)
@RequestHeader注解的属性如下:
value:请求头的名称
required:是否必须携带此请求头 【一般都是false】
先来看看请求头:我们在访问一个页面的时候 ,会携带很请求头,请求头包含了很多很多信息 具体要你自己去抓包看一下:
然后我们想获取就用注解@RequestHeader:
package com.bihu.Controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class TestController {
@RequestMapping("/ok")
@ResponseBody//直接响应 不进行跳转
//下面我们获取请求头的user-agent ,要获取请求头的什么就往里面写什么即可,测试一下:
public void Test(@RequestHeader("user-agent") String headerValue){
System.out.println(headerValue); //打印一下请求头的 user-agent
}
}
所以获取就成功了,当然你要打印请求头的什么都可以,但是呢名字要对即可。
2.注解:
@CookieValue
使用@CookieValue可以获得指定Cookie的值
@CookieValue注解的属性如下:
value:指定cookie的名称
required:是否必须携带此cookie 【一般都是false】
请求头有个 Cookie ,他就是请求的Cookie,因为呢 他是键值对存在的,所以我们直接用@RequestHeader 来获取 还要对其进行操作,SpringMVC 有怎么一个 注解 @CookieValue ,可以直接获取到
请求头的值,根据Cookie 的键直接获取即可:
package com.bihu.Controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.CookieValue;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class TestController {
@RequestMapping("/ok")
@ResponseBody//直接响应 不进行跳转
//下面我们获取请求头的user-agent ,要获取请求头的什么就往里面写什么即可,测试一下:
public void Test(@CookieValue("JSESSIONID") String headerValue){
System.out.println(headerValue); //打印一下请求头的 user-agent
}
}
所以 就那么简单 直接获取即可
话说今天想做一个请求访问数据的 然后出现跨域 搞得累死,也是有关这些玩意的