URL
http:MapServer
所属资源
描述
地图服务提供访问地图和图层的功能。地图服务可以分为缓存地图服务和动态地图服务。通过高速缓存预先创建切片而不是动态渲染地图的地图服务,被称为缓存地图服务。动态地图服务则是在每一次请求提供地图时都需要服务器渲染一次的地图,使用切片缓存的地图服务可以显著提高地图传输的速度,而动态地图服务则具有更高的灵活性。地图服务总是被发布为池化服务(pooled services)。
REST API利用地图服务资源实现地图服务。这些资源只对发布的地图文档的默认的数据框架起作用。这个资源提供了地图的基本信息,包括地图包含的图层,缓存与否,空间参考,初始的范围和完整的范围、坐标单位,版权信息。地图服务资源也提供了一些服务相关的元数据,如服务描述、服务作者和关键字。如果是缓存地图,额外的信息包括缓存切片方案,如缓存切片的起始点、切片级别的细节、切片大小等。注意,多图层缓存在REST中仅能通过导出操作访问,这些请求被当作一个动态地图服务。REST不支持多图层缓存的切片访问。
地图服务资源支持以下多种操作:
地图导出- 用于从动态地图服务中导出地图图像。地图可从原始的数据源转换为不同投影的显示结果。地图图像生成之后,地图服务就无法改变已有层的要素渲染,不能添加动态图层或改变图层的绘制顺序。
Identify- 基于用户鼠标在地图上的点击返回一个或多个图层的要素属性信息。
查找- 基于关键字返回一个或多个图层的要素属性信息。
生成 KML- 生成一个封装在KMZ文件中的KML文档。注:kmz是kml的压缩格式。该文件包含一个具有指定的属性和参数的KML服务端点的网络连接。这一操作对尚未使用令牌服务限制的服务是有效的。
查询单个图层- 基于查询条件返回一个要素子集。
地图服务不具有编辑功能。用户只能读取要素和属性内容。
资源层次
参数表
参数
详细信息
f
描述: 返回格式。默认返回格式是html。
值:: html | json | kmz | lyr | nmf | jsapi | ve | gmaps
应用示例
示例1:在sampleserver1上的"ESRI_StateCityHighway_USA"地图服务的URL示例.
/ArcGIS/rest/services/Specialty/ESRI_StateCityHighway_USA/MapServer
JSON响应语法
注意:supportedImageFormatTypes属性是在9.3.1新加的
{
"serviceDescription" : "",
"mapName" : ""
"description": "",
"copyrightText" : ""
"layers": [
{
"id" : ,
"name" : "",
"defaultVisibility" : ,
"parentLayerId" : ,
"subLayerIds" : [, ]
},
{
"id" : ,
"name" : "",
"defaultVisibility" : ,
"parentLayerId" : ,
"subLayerIds" : [, ]
}
],
"spatialReference" : {},
"singleFusedMapCache" : ,
"tileInfo": {
"rows" : , "cols" : , "dpi" : , "format" : , "compressionQuality" : ,
"origin" : {},
"spatialReference" : {},
"lods": [
{"level" : , "resolution" : , "scale" : },
{"level" : , "resolution" : , "scale" : }
]
},
"initialExtent" : {},
"fullExtent" : {},
"units" : "",
"supportedImageFormatTypes" : "",
"documentInfo": {
"" : "",
"" : ""
}
}
JSON响应示例
{
"serviceDescription" : "Test Map Service Description",
"mapName" : "Street Map Pro Data",
"description": "Street Map USA",
"copyrightText" : "ESRI",
"layers": [
{"id" : 0, "name" : "Cities", "defaultVisibility" : true, "parentLayerId" : -1, "subLayerIds" : null},
{"id" : 1, "name" : "States", "defaultVisibility" : true, "parentLayerId" : -1, "subLayerIds" : null},
{"id" : 2, "name" : "Counties", "defaultVisibility" : false, "parentLayerId" : -1, "subLayerIds" : [3, 4]},
{"id" : 3, "name" : "Large Counties", "defaultVisibility" : false, "parentLayerId" : 2, "subLayerIds" : null},
{"id" : 4, "name" : "Small Counties", "defaultVisibility" : false, "parentLayerId" : 2, "subLayerIds" : null}
],
"spatialReference" : {"wkid" : 4326},
"singleFusedMapCache" : true,
"tileInfo": {
"rows" : 512, "cols" : 512, "dpi" : 96, "format" : "JPEG", "compressionQuality" : 75,
"origin" : {"x" : -130.0, "y" : 50.0},
"spatialReference" : {"wkid" : 4326},
"lods": [
{"level" : 0, "resolution" : 8.46, "scale" : 32000.0 },
{"level" : 1, "resolution" : 4.23, "scale" : 16000.0 },
{"level" : 2, "resolution" : 2.11, "scale" : 8000.0 },
{"level" : 3, "resolution" : 1.05, "scale" : 4000.0 },
{"level" : 4, "resolution" : 0.52, "scale" : 2000.0 }
]
},
"initialExtent" : {
"xmin" : -109.55, "ymin" : 25.76, "xmax" : -86.39, "ymax" : 49.94,
"spatialReference" : {"wkid" : 4326}
},
"fullExtent" : {
"xmin" : -130.0, "ymin" : 24.0, "xmax" : -65.0, "ymax" : 50.0,
"spatialReference" : {"wkid" : 4326}
},
"units" : "esriDecimalDegrees",
"supportedImageFormatTypes": "PNG32,PNG24,PNG,JPG,DIB,TIFF,EMF,PS,PDF,GIF,SVG,SVGZ",
"documentInfo": {
"Title" : "StreetMap USA.mxd",
"Author" : "ESRI Data Team",
"Comments" : "ESRI Data and Maps ",
"Subject" : "Street level data for the US",
"Category" : "vector",
"Keywords" : "StreetMap USA"
}
}