URI
<arcgisrest_uri>/{mapName}/MapServer[.<format>]
支持的方法
父资源
子资源
exportMap、mapTile 、legend 、query 、layer 、find 、identify
注:ArcGIS REST 地图服务通过 iServer 再次发布为 ArcGIS REST 地图服务后,仅支持 exportMap、legend 资源。
介绍
将地图服务托管在 ArcGIS Server 站点上时,ArcGIS REST 地图服务将提供相关的地图功能,例如绘图,查询和搜索。ArcGIS REST 地图服务不提供编辑功能,对要素和属性内容仅支持只读。
支持的方法:
资源层次
HTTP 请求方法
对如下 URI 执行 HTTP 请求,以 json 输出格式为例加以说明,其中,supermapiserver 是服务器名,{component}是服务组件名 ,{mapName}是地图名。
http://supermapiserver:8090/iserver/services/{component}/arcgisrest/{mapName}/MapServer.json
GET 请求
获取地图当前状态的基本信息,包括该地图的中心点,比例尺,地图显示范围等。
响应结构
对 ArcGIS 地图资源执行 GET 请求,返回的资源表述的结构如下:
字段 | 类型 | 说明 |
fullExtent | ArcGISMapExtend |
地图的全幅范围 |
capabilities | String | 支持的功能,以逗号分隔,如 Map,Query,Data |
supportsDynamicLayers | boolean | 是否支持动态图层 |
maxScale | double | 地图的最大显示比例尺。该值为0时,表示没有比例尺显示限制。 |
units | EsriUnits | 地图的单位 |
currentVersion | String | 当前版本 |
supportedImageFormatTypes | String | 支持的图片格式类型,如 JPG,PNG |
supportedQueryFormats | String | 支持的查询输出格式,如 JSON,RJSON |
initialExtent | ArcGISMapExtend |
初始范围 |
layers | ArcGISLayerInfo[] | 子图层集 |
subLayerIds | int[] | 子图层 ID |
mapName | String | 地图名称 |
minScale | double | 地图的最小显示比例尺。该值为0时,表示没有比例尺显示限制。 |
defaultVisibility | boolean | 默认是否可见。 |
id | int | 图层 ID |
parentLayerId | int | 父图层ID |
description | String | 服务描述 |
singleFusedMapCache | boolean | 是否是融合的切片缓存 |
tileInfo | ArcGISTileInfo | 切片信息 |
spatialReference | ArcGISSpatialReference | 空间参考 |
响应示例
对 ArcGIS mapService 资源:http://supermapiserver:8090/iserver/services/map-BeijingAddress/arcgisrest/county_R/MapServer?f=pjson 执行 GET 请求,返回 pjson 格式的资源表述如下:
{
"fullExtent": {
"ymin": 4787401.537187391,
"xmin": 1.2848061091746317E7,
"ymax": 5024534.925299342,
"xmax": 1.3080107104713367E7,
"spatialReference": {"wkt": "PROJCS[\"WGS_1984_Web_Mercator\",GEOGCS[\"GCS_WGS_1984_Major_Auxiliary_Sphere\",DATUM[\"D_WGS_1984_Major_Auxiliary_Sphere\",SPHEROID[\"WGS_1984_Major_Auxiliary_Sphere\",6378137.0,Infinity]],PRIMEM[\"Greenwich\",0.0],UNIT[\"DEGREE\",0.017453292519943295]],PROJECTION[\"Mercator\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0.0],PARAMETER[\"Latitude_Of_Origin\",0.0],PARAMETER[\"Scale_Factor\",0.0],UNIT[\"METER\",1.0]]"}
},
"capabilities": "Map",
"supportsDynamicLayers": true,
"maxScale": 0,
"singleFusedMapCache": true,
"tileInfo": null,
"description": "",
"units": "esriMeters",
"currentVersion": "10.21",
"supportedImageFormatTypes": "PNG,JPG",
"supportedQueryFormats": null,
"initialExtent": {
"ymin": 4895555.007245858,
"xmin": 1.2988926192011094E7,
"ymax": 4963572.763102115,
"xmax": 1.305694394786735E7,
"spatialReference": {"wkt": "PROJCS[\"WGS_1984_Web_Mercator\",GEOGCS[\"GCS_WGS_1984_Major_Auxiliary_Sphere\",DATUM[\"D_WGS_1984_Major_Auxiliary_Sphere\",SPHEROID[\"WGS_1984_Major_Auxiliary_Sphere\",6378137.0,Infinity]],PRIMEM[\"Greenwich\",0.0],UNIT[\"DEGREE\",0.017453292519943295]],PROJECTION[\"Mercator\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0.0],PARAMETER[\"Latitude_Of_Origin\",0.0],PARAMETER[\"Scale_Factor\",0.0],UNIT[\"METER\",1.0]]"}
},
"layers": [
{
"subLayerIds": [],
"maxScale": 0,
"name": "hospital@BeijingAddress",
"defaultVisibility": true,
"id": 0,
"minScale": 0,
"parentLayerId": -1
},
{
"subLayerIds": [],
"maxScale": 0,
"name": "school@BeijingAddress",
"defaultVisibility": true,
"id": 1,
"minScale": 0,
"parentLayerId": -1
},
{
"subLayerIds": [],
"maxScale": 0,
"name": "company@BeijingAddress",
"defaultVisibility": true,
"id": 2,
"minScale": 0,
"parentLayerId": -1
},
{
"subLayerIds": [],
"maxScale": 0,
"name": "county_R@BeijingAddress",
"defaultVisibility": true,
"id": 3,
"minScale": 0,
"parentLayerId": -1
}
],
"mapName": "county_R",
"minScale": 1.0E12,
"spatialReference": {"wkt": "PROJCS[\"WGS_1984_Web_Mercator\",GEOGCS[\"GCS_WGS_1984_Major_Auxiliary_Sphere\",DATUM[\"D_WGS_1984_Major_Auxiliary_Sphere\",SPHEROID[\"WGS_1984_Major_Auxiliary_Sphere\",6378137.0,Infinity]],PRIMEM[\"Greenwich\",0.0],UNIT[\"DEGREE\",0.017453292519943295]],PROJECTION[\"Mercator\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0.0],PARAMETER[\"Latitude_Of_Origin\",0.0],PARAMETER[\"Scale_Factor\",0.0],UNIT[\"METER\",1.0]]"}
}
HEAD 请求
返回跟 GET 请求一样的 HTTP 响应头,但是没有响应实体。可以在不必传输整个响应内容的情况下,获取包含在响应消息头中的元数据信息。元数据信息包括媒体类型,字符编码,压缩编码,实体内容长度等。
HEAD 请求可以用来判断 mapService 资源是否存在,或者客户端是否有权限访问 mapService 资源。通过对加.<format>的 URI 执行 HEAD 请求,还可以快速判断 mapService 资源是否支持<format>格式的表述。
请参见
- services,exportMap、mapTile 、legend 、query 、layer 、find 、identify
- 客户端构建 REST 请求
- 状态码列表及说明
- SuperMap iServer REST API 表述格式介绍
- 资源层次结构