开发带cookies信息才能访问的get接口

开发带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信息进行访问
在这里插入图片描述

访问结果
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42884654/article/details/83901845
今日推荐