ArcGIS Javascript 异常之No 'Access-Control-Allow-Origin' header
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了ArcGIS Javascript 异常之No 'Access-Control-Allow-Origin' header,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2036字,纯文字阅读大概需要3分钟。
内容图文
开发过程中遇到此异常,查询后网上说是跨域访问的问题,给出的解决方案是通过JQuery的跨域访问机制来解决,
难道我需要直接找ArcGISTiledMapServiceLayer相关代码,去重构吗?
还有给出的解决方案如下,http://resources.arcgis.com/en/help/rest/apiref/config.html,大意就是要设置一下ArcGIS Server服务,可服务是别人的,设置不了。
代码如下,在地图类型切换时需要调用另一个网址,就报出了如下错误。
if (tp == "mp") { //移除之前 map.removeLayer(basemap); //地图 basemap = new ArcGISTiledMapServiceLayer("http://xxx.xxx.xxx.xxx.xxx.xxx"); $("#mptype").val("mp"); map.addLayer(basemap); }
实际上两个图层域名是差不多的,不知道为什么出现这个问题。
后来尝试了下,在地图初始化的时候就实例化两个ArcGISTiledMapServiceLayer,在地图切换的时候进行图层的添加、删除,不进行实例化,即解决问题。
大致代码如下:
function loadMap(lnt,lat,zo0o) { zoom=zo0o; require(["esri/map", "esri/toolbars/navigation", "esri/layers/ArcGISTiledMapServiceLayer"], function (Map, Navigation, ArcGISTiledMapServiceLayer) { options = { logo: false, fadeOnZoom: true, slider: true, sliderPosition: "bottom-left", sliderStyle: "large" }; iniLat = lat; iniLnt = lnt; map = new esri.Map("mapDiv", options); basemap = new ArcGISTiledMapServiceLayer("http://xxx.xxx.xxx.xxx"); annolayer = new ArcGISTiledMapServiceLayer("http://bb.bbb.ccc.ddd"); map.addLayer(annolayer); spatialReference = map.spatialReference; map.on("mouse-down", function (evt) { console.log(evt.mapPoint.x.toFixed(3) + "," + evt.mapPoint.y.toFixed(3)); }); map.centerAndZoom(new esri.geometry.Point(lnt, lat), zoom); navToolbar = new Navigation(map); }); }
地图切换代码修改如下:
function MapTypeSwitch(tp){ require(["esri/map", "esri/layers/ArcGISTiledMapServiceLayer", "esri/config"], function (Map, ArcGISTiledMapServiceLayer, esriConfig) { esriConfig.defaults.io.corsDetection = false; if (tp == "mp") { //移除之前 $("#mptype").val("mp"); map.removeLayer(annolayer); map.addLayer(basemap); } }); }
ArcGIS Javascript 异常之No 'Access-Control-Allow-Origin' header
标签:
本文系统来源:http://www.cnblogs.com/DayDreamEveryWhere/p/4801344.html
内容总结
以上是互联网集市为您收集整理的ArcGIS Javascript 异常之No 'Access-Control-Allow-Origin' header全部内容,希望文章能够帮你解决ArcGIS Javascript 异常之No 'Access-Control-Allow-Origin' header所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。