Swagger实现登录查看Api

/ SwaggerSpring / 2 条评论 / 320浏览

1、登录页面添加Cookie

工具:js-cookie

 Cookies.set('token', data.data.token.token);

2、后端添加过滤器

package filter;

import cn.hutool.core.util.ArrayUtil;

import javax.servlet.*;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

public class RequestAuthFilter implements Filter {

    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain chain) throws IOException, ServletException {
        // 开始进入请求地址拦截
        boolean flag = true;
        HttpServletRequest request = (HttpServletRequest) servletRequest;
        Cookie[] cookies = request.getCookies();
        if (ArrayUtil.isNotEmpty(cookies)) {
            int length = cookies.length;
            for (int i = 0; i < length; i++) {
                Cookie cookie = cookies[i];
                String name = cookie.getName();
                // 可在此处作Token校验
                if (name.equals("token")) {
                    flag = false;
                } else {
                    continue;
                }
            }
        }

        if (flag) {
            HttpServletResponse response = (HttpServletResponse) servletResponse;
            String fullUrl = request.getContextPath() + "/user/login";
            response.sendRedirect(fullUrl);
        } else {
            chain.doFilter(servletRequest, servletResponse);
        }
    }
}

3、注册过滤器

@Bean
public FilterRegistrationBean FilterRegistration() {
    FilterRegistrationBean registration = new FilterRegistrationBean();

    registration.setDispatcherTypes(DispatcherType.REQUEST);
    // 注入过滤器
    registration.setFilter(new RequestAuthFilter());
    // 过滤器名称
    registration.setName("RequestAuthFilter");
    // 拦截规则
    List<String> paths = Lists.newArrayList();
    paths.add("/");
    paths.add("/v2/*");
    paths.add("/swagger-ui.html");
    paths.add("/swagger-resources");
    paths.add("/swagger-resources/configuration/ui");
    registration.setUrlPatterns(paths);
    // 是否自动注册 false 取消Filter的自动注册
    registration.setEnabled(true);
    // 过滤器顺序
    registration.setOrder(Integer.MAX_VALUE - 2);

    return registration;
}
  1. 这个星球从未有过的罪恶~~~

    法 轮 功在1992年公开传出,到迫害前,有一亿法 轮 功学员修心向善,遍布中国社会各阶层,包括当时中国共 产 党最高层的家属和官员本人。法 轮 功给亿万民众带来健康,给社会带来稳定,因修炼法 轮 功而涌现的好人好事层出不穷,对整个社会道德的提升起了非常积极的作用。

    但江×民出于妒忌和对权力的过分保护,罔顾民意,动用整部国家机器,整个国家资源,对一亿人的正信进行了疯狂惨烈的迫害。2001年1月23日,江×民集团又自导自演了天安门自焚伪案,让众多的法 轮 功修炼者陷入了谎言构陷的劫难之中。江×民对法 轮 功所采用的“名誉上搞臭,经济上搞垮,肉体上消灭”、“打死白打,打死算自杀”、“不查尸源,直接火化”等政策,犯下了令人发指、无可饶恕的罪行。

    为了逼迫让法 轮 功修炼者放弃信仰,恶警使用了数十种乃至上百种令人发指的酷刑,几百万法 轮 功修炼者被害死,甚至被作为活体器官库,由此制造了这个星球从未有过的罪恶——活摘器官的罪行。这是赤裸裸的酷刑罪、屠杀罪、反人类罪,超出了任何正常人类所能设想的犯罪行为方式。

    回复
  2. 一个国家有大量的冤案,说明法律己经滥了;一个国家有大量的有毒食品,说明道德己经滥了;一个国家有大量的愚民,说明文化己经滥了;一个国家有大量的穷人,说明政府已经滥了;一个国家有大量的失业,说明经济已经滥了;一个国家有大量的贪官,说明制度已经滥了;一个国家有大量的堕落,说明信仰已经滥了;一个国家有大量的无法无天的党棍,说明执政党已经滥了。 三退吧。

    回复