Advertisement

解决Spring Boot + AJAX跨域问题并确保每次请求都有唯一的Session ID

阅读量:

1、问题复现:

该项目的后端架构基于Springboot框架进行构建,并采用Shiro框架实现安全控制功能。在完成前后端分离设计之后,前端通过ajax技术与后端服务进行交互。然而,在未进行任何额外处理的情况下,ajax调用过程中出现了错误提示:

复制代码
    Access to XMLHttpRequest at 'http://127.0.0.1:8080/login/checkLogin' from origin 
    'http://localhost:63342' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' 
    header is present on the requested resource.
    
    
      
      
      
    

显然,浏览器无法正常接收服务端响应是由跨域问题所导致的。在服务端对响应头信息进行统一拦截与调整后,跨域问题得以有效解决。然而,shiro的授权管理

复制代码
    Subject currentUser = SecurityUtils.getSubject();
    currentUser.isAuthenticated(); // 每次请求,都是返回false
    

全部评论 (0)

还没有任何评论哟~