最近的项目使用了shiro框架,出现了一个新问题(登录方面)。从项目下的前端页面进行登录操作,进行其他操作没有异常。但是在本机其他地方的页面或者其他机器浏览器打开的页面,登录后,进行其他操作,提示没有登录!!!!!值得一提的是使用postman不管在什么地方都没问题,于是知乎了一下,以下是大佬的回答:
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
//System.out.println("这里是跨域请求过滤器");
HttpServletResponse httpResponse = (HttpServletResponse) servletResponse;
/** 允许所有的跨域请求 */
httpResponse.setHeader("Access-Control-Allow-Origin", "*");
httpResponse.setHeader("Access-Control-Allow-Headers","Origin, X-Requested-With, Content-Type, Accept");
httpResponse.setHeader("Access-Control-Allow-Credentials", "true");
httpResponse.setHeader("Access-Control-Allow-Methods","*");
filterChain.doFilter(servletRequest, httpResponse);
}
这是我在项目中加的过滤器,用来允许跨域请求的。