URI

<arcgisrest_uri>/{mapName}/MapServer[.<format>]

支持的方法

GETHEAD

父资源

arcgisrest

子资源

exportMapmapTilelegendquerylayerfindidentify

注:ArcGIS REST 地图服务通过 iServer 再次发布为 ArcGIS REST 地图服务后,仅支持 exportMaplegend 资源。

介绍

将地图服务托管在 ArcGIS Server 站点上时,ArcGIS REST 地图服务将提供相关的地图功能,例如绘图,查询和搜索。ArcGIS REST 地图服务不提供编辑功能,对要素和属性内容仅支持只读。

支持的方法:

  • GET:获取地图的基本信息。
  • HEAD:检查 ArcGIS mapService 资源是否存在,权限是否可以访问。

资源层次

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>格式的表述。

请参见