maps


URI

<portal_uri>/maps[.<format>]

支持的方法

GETPOSTDELETEHEAD

父资源

portal

子资源

mapmapShareSettingsbottomMap

介绍

maps 资源是当前用户有权查看的地图列表信息,支持创建新的地图,支持批量删除地图。

支持的方法:

支持的表述格式:rjson、json、html、xml。

资源层次

HTTP 请求方法

对如下 URI 执行 HTTP 请求,以 rjson 输出格式为例加以说明,其中,supermapiportal 是服务器名。

http://supermapiportal:8090/iportal/web/maps.rjson

GET 请求

获取当前用户有权限查看的地图列表信息。

请求参数

如果参数未设置,则返回用户有权限查看的当前第一页中的地图列表信息,设置参数后,会返回用户指定的地图列表信息,请求参数必须包含在 URI 中。

名称 类型 含义

userNames

String[] 根据地图作者名过滤。
tags String[] 根据地图标签过滤。
suggest Boolean 是否是默认底图。
sourceTypes SourceType[] 根据地图来源类型过滤。包括:SUPERMAP_REST,MAPVIEWER,WMS,WMTS。
mapStatus ViewerMapStatus 根据地图状态查询。该参数已过期,即 SuperMap iPortal 8C 版或更高版本将不再沿用此参数。
keywords String[] 关键字过滤。
epsgCode int 获取指定投影的地图。
orderBy OrderBy[] 排序字段,支持多个字段的排序。
currentPage int 分页页码。
pageSize int 分页中每页大小。
dirIds Integer[] 根据目录 id 过滤。
isNotInDir Boolean 根据是否是未分组的进行过滤,默认值为 false。如果为 true,则返回所有未分组的地图列表信息;如果为 false,则返回全部的地图列表信息。
未分组是指未添加到目录的地图列表资源。
updateStart Long 查询此时间值及此时间值之后更新过的地图,如果为 null 或者小于零,则起始时间不限制。
updateEnd Long 查询此时间值及此时间值之前更新过的地图,如果为 nul 或者小于零 l,则截止时间不限制。
visitStart Long 查询此时间值及此时间值之后访问过的地图,如果为 null 或者小于零,则起始时间不限制。
visitEnd Long 查询此时间值及此时间值之前访问过的地图,如果为 null 或者小于零,则截止时间不限制。
filterFields FilterFields[] 用于关键字查询时的字段过滤。字段名称需大写。例如:根据地图创建者的关键字符过滤,则需要设置 keywords=["admin"]&filterFields=["NICKNAME"]。

响应结构

对 maps 资源执行 GET 请求,返回当前用户有权限查看的地图列表。由以下字段组成:

字段 类型 说明
content List<ViewerMap> 页面内容。
currentPage int 当前第几页。
pageSize int 每页大小。
searchParameter SearchParameter 当前页搜索参数。
total int 总记录数。
totalPage int 总页数。

响应示例

对 maps 资源:http://localhost:8090/iportal/web/maps.rjson 执行 GET 请求,返回 rjson 格式的资源表述如下:

如果希望获取指定的地图列表信息,如根据地图作者的关键字符过滤,则需要设置 keywords=["admin"]&filterFields=["NICKNAME"],即对 maps 资源:http://localhost:8090/iportal/web/maps.rjson?keywords=["admin"]&filterFields=["NICKNAME"]执行 GET 请求,返回的 rjson 格式的资源表述如下:

POST 请求

创建新的地图。

请求参数

发送请求时,需要在请求体中传递如下参数:

名称 类型 含义

units

String 地图的单位。默认是'degrees'。可选值为'degrees'(或者'dd')、‘m’、'ft'、'km'、'mi'、'inches'。
level Integer 地图的缩放级别。
center Point2D 地图的中心点。
controls List<String> 地图显示控件集合。
createTime Long 创建日期。
description String 地图描述信息。
epsgCode Integer 投影坐标系对应的 EPSG 代码。
extent Rectangle2D 地图的范围。
id Integer 地图唯一标识。
status ViewerMapStatus 地图状态 save、publish。该参数已过期,即 SuperMap iPortal 8C 版或更高版本将不再沿用此参数。
tags List<String> 地图标签。
userName String 用户名。
visitCount Integer 地图的访问次数。
layers List<Layer> 地图的图层列表。
title String 地图名称。
thumbnail String 地图的缩略图路径。
sourceType SourceType 地图的来源类型。
isDefaultBottomMap Boolean 是否是默认底图。
authorizeSetting List<IportalAuthorizeEntity> 授权信息。可以为空值 null,如果设置为空值,则表示权限信息为:私有。
updateTime Long 更新时间。

响应结构

返回的资源表述结构如下:

字段 类型 说明
newResourceID String 创建新地图的 id。
newResourceLocation String 创建新地图的 URI。
succeed boolean 创建新地图是否成功。

响应示例

对 maps  资源:http://localhost:8090/iportal/web/maps.rjson 执行 POST 请求,创建新的地图,发送请求体如下:

{

    "units": null,

    "level": 0,

    "center": {

        "id": "SuperMap.Geometry.Point_115",

        "x": 117.05137167763,

        "y": 40.038712306824

    },

    "controls": [],

    "description": "",

    "epsgCode": 4326,

    "extent": {

        "left": 113.5989213447,

        "bottom": 37.76434929129,

        "right": 120.50382201056,

        "top": 42.313075322359

    },

    "thumbnail": "http://localhost:8090/iportal/services/map-jingjin/rest/maps/%E4%BA%AC%E6%B4%A5%E5%9C%B0%E5%8C%BA%E5%9C%9F%E5%9C%B0%E5%88%A9%E7%94%A8%E7%8E%B0%E7%8A%B6%E5%9B%BE/entireImage.png",

    "scale": 4.35780249300821E-07,

    "authorizeSetting": null,

    "title": "京津地图",

    "tags": [

        "京津"

    ],

    "userName": "admin",

    "sourceType": "MAPVIEWER",

    "visitCount": 0,

    "resolution": 0.00545410795092206,

    "id": null,

    "layers": [

        {

            "title": "京津地区土地利用现状图",

            "url": "http://localhost:8090/iportal/services/map-jingjin/rest/maps/京津地区土地利用现状图",

            "opacity": 1,

            "zindex": 0,

            "type": "SUPERMAP_REST",

            "layerType": "BASE_LAYER",

            "name": null,

            "bounds": {

                "left": 114.58902605452,

                "bottom": 37.764349291289,

                "right": 119.51371730073,

                "top": 42.313075322358

            }

        }

    ]

}

则返回的 rjson 格式响应结果如下:

{

    "succeed": true,

    "newResourceID": "24",

    "newResourceLocation": "http://localhost:8090/iportal/web/maps/24"

}

DELETE 请求

删除地图,支持批量删除地图。url 中传递需要删除地图的 id 数组。

响应结构

返回的资源表述结构如下:

字段 类型 说明
succeed boolean 删除地图是否成功。
error Httperror 出错信息,如果删除地图成功,则没有本字段。

响应示例

对 maps 资源:http://localhost:8090/iportal/web/maps.rjson?ids=[1,2] 执行 DELETE 请求,批量删除 id 为 1 和 2 的两幅地图,返回的 rjson 格式响应结果如下:

{ "succeed": true}

HEAD 请求

返回跟 GET 请求一样的 HTTP 响应头,但是没有响应实体。可以在不必传输整个响应内容的情况下,获取包含在响应消息头中的元数据信息。元数据信息包括媒体类型,字符编码,压缩编码,实体内容长度等。

HEAD 请求可以用来判断 map 资源是否存在,或者客户端是否有权限访问 map 资源。通过对加.<format>的 URI 执行 HEAD 请求,还可以快速判断 map 资源是否支持<format>格式的表述。

请参见