问题描述
我用浏览器输入地图地址访问rest服务时,第一次输入需要用户名密码,之后不需要了,是可以访问到地图发布的服务页面,但我用flex写的前端页面去访问就打不开,不出底图。因为地图服务是ArcGISTiledMapServiceLayer,在debug下我查看发现里面的tileinfo等于null,也就是根本没有拿到数据flex的代码如下:nowLayer=newArcGISTiledMapServiceLayer();nowLayer.url=userMapUrl;map.addLayer(nowLayer);setLods();privatefunctionsetLods():void{if(nowLayer.tileInfo!=null){//这里的tileinfo一直是nullmap.lods=nowLayer.tileInfo.lods;}else{setTimeout(setLods,1000);}}这个问题我以为是flex的安全沙箱冲突于是我加了crossdomain.xml文件,我用http://ip:6080/crossdomain.xml是可以访问到这个文件crossdomain文件如下<cross-domain-policy><allow-access-fromdomain="*"/><site-controlpermitted-cross-domain-policies="all"/><allow-http-request-headers-fromdomain="*"headers="*"/></cross-domain-policy>求大神指点。。。
解决方案
解决方案二:
有没有人知道啊亲们急啊搞好几天了。。就等着交付了。
解决方案三:
自己已解决。是rest访问服务需要密码的问题。
解决方案四:
引用2楼wsxzx1的回复:
自己已解决。是rest访问服务需要密码的问题。
哦刚看到祝贺。
解决方案五:
如果服务设置了需要用户密码访问,flex代码里面就需要加上token。。可以看下我的博客,关于ArcGISServer服务安全机制的:http://blog.csdn.net/esricd/article/details/7972903
解决方案六:
太深奥了,没有看懂什么意思
解决方案七:
1、首先你调用的地图服务是否做了切片如果做了切片你用ArcGISTiledMapServiceLaye是可以得2、你要是在开发环境中是不存在安全性问题的。