zoukankan      html  css  js  c++  java
  • Springboot中跨域的问题

    最初的代码时在特定方法里写响应头的,代码经过不断演化,变成以下

    response.setHeader("Access-Allow-Control-Origin","*");
    response.setHeader("Access-Control-Allow-Headers","*");
    response.setHeader("Access-Control-Allow-Methods","GET, POST, PUT, OPTIONS");

    java代码:

    @PostMapping("query")
    @ResponseBody
    public JsonResult query(String mapId,HttpServletResponse response)
    {
        response.setHeader("Access-Allow-Control-Origin","*");
        response.setHeader("Access-Control-Allow-Headers","*");
        response.setHeader("Access-Control-Allow-Methods","GET, POST, PUT, OPTIONS");
        if(Objects.isNull(mapId))
        {
            return errorResult("地图模型载入失败");
        }
        List<SnapShot> list = handleInternal(mapId);
    
        if(Objects.isNull(list))
        {
            return errorResult("地图模型载入失败");
        }
    
        String lastUpdateTime = statusService.queryStatus("lastUpdateTime");
        return successResult("成功", ImmutableMap.of("updateTime",lastUpdateTime,"result",list));
    }

    可是还会报错

    Access to XMLHttpRequest at  from origin  has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

    和同事咨询了一下,解决方法如下

    在对应的方法加注解

    @CrossOrigin(origins = "*", maxAge = 3600)
    @PostMapping("query")
    @ResponseBody
    public JsonResult query(String mapId)
    {
        
        if(Objects.isNull(mapId))
        {
            return errorResult("地图模型载入失败");
        }
        List<SnapShot> list = handleInternal(mapId);
    
        if(Objects.isNull(list))
        {
            return errorResult("地图模型载入失败");
        }
    
        String lastUpdateTime = statusService.queryStatus("lastUpdateTime");
        return successResult("成功", ImmutableMap.of("updateTime",lastUpdateTime,"result",list));
    }
  • 相关阅读:
    python之函数一
    python之字典
    分支与master切换 | MyEclipse git怎么提交代码
    gitignore的使用详细图解
    1.1(学习笔记)Servlet简介及一个简单的实例
    10.4(java学习笔记)CLOB,BLOB基本操作
    10.3(Java学习笔记)JDBC时间操作
    10.2(java学习笔记)JDBC事务简述
    10.1(java学习笔记)JDBC基本操作(连接,执行SQL语句,获取结果集)
    9.1(java学习笔记)正则表达式
  • 原文地址:https://www.cnblogs.com/passedbylove/p/12377638.html
Copyright © 2011-2022 走看看