URI
<mapService_uri>/legend[.<format>]
支持的方法
父资源
介绍
图例资源表示地图服务的图例, 它返回服务中所有图层的图例信息。 每个图层的图例信息包括符号图像和每个符号的标签,每个符号都是 96 DPI 、20x20 像素的图像。除以上信息外还包括每个图层的其他信息,例如图层ID,名称以及最小和最大比例。当前,ArcGIS legend 资源暂不支持参数过滤。
支持的方法:
资源层次
HTTP 请求方法
对如下 URI 执行 HTTP 请求,以 json 输出格式为例加以说明,其中,supermapiserver 是服务器名,{component}是服务组件名,{mapName}是地图名。
http://supermapiserver:8090/iserver/services/{component}/arcgisrest/{mapName}/MapServer/legend.json
GET 请求
获取图层的图例信息。
请求参数
名称 | 类型 | 含义 |
f |
String | 响应格式,支持 json、pjson |
size |
int | 导出的图像的大小(宽度*高度),注意,该参数仅对点、线、面图层生效。 |
响应结构
对 legend 资源执行 GET 请求,返回的是各图层的图例信息。
字段 | 类型 | 说明 |
layerType | String | 图层类型 |
layerId | int | 图层 ID |
maxScale | double | 地图的最大显示比例尺。该值为0时,表示没有比例尺显示限制。 |
legend | legend | 返回的图例信息,包括以下内容:
|
layerName | String | 图层名称 |
minScale | double | 地图的最小显示比例尺。该值为0时,表示没有比例尺显示限制。 |
响应示例
对 legend 资源执行 GET 请求, URI:http://localhost:8090/iserver/services/map-BeijingAddress/arcgisrest/county_R/MapServer/legend,返回 pjson 格式的资源表述如下:
{"layers": [
{
"layerType": "Feature Layer",
"layerId": 0,
"maxScale": 0,
"legend": {
"imageData": "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAhklEQVR42mP4TyFgGDUAtwG79u/7H5mS/N8jJPh/SHzc/3lLl/z/+esXcQZs2bkTrBEdT541kzgDQDZiMwCEX7x6id+AR0+e4NQMwgeOHMFvAMiffpEROA24e/8+YS/0Tp2CVXNBVSVxYfDly5f/NS0tGJrR/U8wHVy/eRMcIxevXBnOSRkAiTii0c7/LEQAAAAASUVORK5CYII=",
"width": 16,
"label": "",
"contentType": "image/png",
"url": "",
"height": 16
},
"layerName": "hospital@BeijingAddress",
"minScale": 0
},
{
"layerType": "Feature Layer",
"layerId": 1,
"maxScale": 0,
"legend": {
"imageData": "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAhklEQVR42mP4TyFgGDUAtwHzz8//L9Ej8Z+hgeG/QIfA/4o9Ff+///5OnAHTT08Ha0THGVsyiDMAZCM2A0D4/vv7+A24/vo6Ts0gvPzycvwGgPzJ0cKB04Dzz88T9kLChgSsmi3mWBAXBu+/v//vscQDQzO6/wmmg+OPj4NjZP/9/cM5KQMAgKCP77yirDkAAAAASUVORK5CYII=",
"width": 16,
"label": "",
"contentType": "image/png",
"url": "",
"height": 16
},
"layerName": "school@BeijingAddress",
"minScale": 0
},
{
"layerType": "Feature Layer",
"layerId": 2,
"maxScale": 0,
"legend": {
"imageData": "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAhklEQVR42mP4TyFgGDUAtwHzz8//L9Ej8Z+hgeG/QIfA/4o9Ff+///5OnAHTT08Ha0THGVsyiDMAZCM2A0D4/vv7+A24/vo6Ts0gvPzycvwGgPzJ0cKB04Dzz88T9kLChgSsmi3mWBAXBu+/v//vscQDQzO6/wmmg+OPj4NjZP/9/cM5KQMAgKCP77yirDkAAAAASUVORK5CYII=",
"width": 16,
"label": "",
"contentType": "image/png",
"url": "",
"height": 16
},
"layerName": "company@BeijingAddress",
"minScale": 0
},
{
"layerType": "Feature Layer",
"layerId": 3,
"maxScale": 0,
"legend": {
"imageData": "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAIklEQVR42mNQn6H7n6GBgXwMIi78/0A2HjVg1IBRAwaLAQAngnj51MmJ8AAAAABJRU5ErkJggg==",
"width": 16,
"label": "",
"contentType": "image/png",
"url": "",
"height": 16
},
"layerName": "county_R@BeijingAddress",
"minScale": 0
}
]}
HEAD 请求
返回跟 GET 请求一样的 HTTP 响应头,但是没有响应实体。可以在不必传输整个响应内容的情况下,获取包含在响应消息头中的元数据信息。元数据信息包括媒体类型,字符编码,压缩编码,实体内容长度等。
HEAD 请求可以用来判断 legend 资源是否存在,或者客户端是否有权限访问 legend 资源。通过对加.<format>的 URI 执行 HEAD 请求,还可以快速判断 legend 资源是否支持<format>格式的表述。