今天下午用JAVASCRITP进行ArcGis Server开发的时候,遇到一个奇怪的问题:在客户端查询服务端哪些图层是默认打的一,哪些图层是默认问闭的。
我用到了:
dojo.forEach(basemap.layerInfos,function(layer)
{
var layerName = layer.name;
layer.id
alert(layer.id + " " +layer.defaultVisibility);
}
这样的语句。查询得到6个图层,6个图层都是默认打开的。接着我将服务端发布的地图文档中关闭了几个图层,重起服务后,查询客户端结果。奇怪,怎么还是6个图层都是默认打开的???
接着我把地图文档中的几个图层都删除掉,然后再重起服务,客户端还是弹出6个图层,难道是IE缓存????
接着删除IE所有的临时文件,再试,还是6个图层!6个都是打开的。
。。。。。。。。。 。。。
接着我直接通过,服务地址在IE中打开http://MyServer/ArcGIS/rest/services/maptst/MapServer
竟然也是6个图层,没有更新!!!
后来问群里的朋友,才知道是Rest缓存的问题。
打开这个地址 http://localhost/ArcGIS/rest/admin
原来这个 Rest缓存,默认是手动清楚。所以除非你重起系统,系统永远不会清除Rest Api缓存。
新手朋友们要注意了,哈哈。