Spring Web拦截器让浏览器自动弹出账号密码框

77 阅读1分钟

废话少说,上代码

public class DemoHandlerInterceptor implements Ordered, HandlerInterceptor {


    @Override
    public int getOrder() {
        return Integer.MIN_VALUE;
    }

    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        response.setStatus(HttpStatus.UNAUTHORIZED.value());
        response.setHeader("WWW-Authenticate", "Basic realm="input Swagger Basic username & password "");

        return false;
    }

}

代码说明:两个要点。 1. 响应code为401;2. 添加WWW-Authenticate