Springboot 2.返回cookies信息的get接口开发 和 带cookis去请求
首先要有一个启动类,默认的启动类的名字就是Application.java。启动的时候直接右键点击run就可以
Application.java:
import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.ComponentScan; @SpringBootApplication @ComponentScan("com.course.server") //需要扫描的包 public class Application { public static void main(String[] args) { SpringApplication.run(Application.class,args); } }
新建一个类,为了验证get接口测试
MyGetMethod.java
package com.course.server; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.Objects; @RestController //被告诉我是你需要扫描的类 public class MyGetMethod { @RequestMapping(value = "/getCookies",method = RequestMethod.GET) //访问的路径是什么,用到什么样的方法 public String getCookies(HttpServletResponse response){ //HttpServerletRequest 装请求信息 //HttpServerletResponse 装响应信息 Cookie cookie = new Cookie("login","ture"); //定义一个cookies信息 response.addCookie(cookie); return "恭喜你获得cookies信息成功"; }
@RequestMapping(value = "/get/with/cookies",method = RequestMethod.GET)
public String getWithCookies(HttpServletRequest request){
Cookie[] cookies = request.getCookies(); //从请求中获取cookies信息
if(Objects.isNull(cookies)){
return "你必须携带cookies信息来";
}
for(Cookie cookie : cookies){
if(cookie.getName().equals("login") && cookie.getName().equals("true")){
return "恭喜你访问成功";
}
}
return "你必须携带cookies信息来";
}
}
然后,启动服务,右键点击Application,会启动服务,会出现控制台的start
然后,直接去浏览器,输入localhost:8888/getCookies (这是响应有了cookie 信息) 因为上一节已经写了配置的端口是8888
第二个方法是请求中呆着cookies,那么用jmeter来访问
添加一个线程组,添加一个HTTP Cookie管理器,填入cookie信息:
添加一个http请求,填入信息,添加一个查看结果树:
运行以后:会看到cookies信息和响应数据,证明请求成功