开发带cookies信息才能访问的get接口
一、在com.course.server包MyGetMethod类下,代码如下
package com.course.server;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;
//@RestController表示我是需要被扫描的类
@RestController
@Api(value = "/",description = "这是我全部的get方法")
public class MyGetMethod {
//设置访问路径和请求方法
@RequestMapping(value = "/getCookies",method = RequestMethod.GET)
//HttpServerletRequest 装请求信息的类
//HttpServerletResponse 装响应信息的类
public String getCookies(HttpServletResponse response){
Cookie cookie = new Cookie("login","true");
response.addCookie(cookie);
return "恭喜你获得cookies成功2";
}
/**
* 要求客户端携带cookies访问
* 这是一个需要携带cookies信息才能访问的get请求
*/
@RequestMapping(value = "/get/with/cookies",method = RequestMethod.GET)
//HttpServerletRequest 装请求信息的类
//HttpServerletResponse 装响应信息的类
public String getWithCookies(HttpServletRequest request){
//获取cookies
Cookie[] cookies = request.getCookies();
//判断cookies是否为空
if (Objects.isNull(cookies)){
return "你必须携带cookies信息来访问";
}
//判断cookies是否正确
for (Cookie cookie : cookies){
if (cookie.getName().equals("login") &&
cookie.getValue().equals("true"))
return "访问成功";
}
return "你必须携带正确的cookies信息来访问";
}
}
运行Application启动类,然后接口工具里进行调用
一、没携带cookies信息进行访问
访问结果
一、携带cookies信息进行访问
访问结果