apps


URI

<portal_uri>/apps[.<format>]

支持的方法

GETPOSTDELETEHEAD

父资源

portal

子资源

appappsShareSettingappsCheckStatusappsCheckInfos

介绍

apps 资源是当前用户有权限查看的应用程序列表,支持注册一个新的应用程序,支持批量删除应用程序。

支持的方法:

支持的表述格式:RJSON、JSON、HTML、XML。

资源层次

HTTP 请求方法

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

http://supermapiportal:8190/iportal/web/apps.rjson

GET 请求

获取当前用户有权限查看的应用程序列表信息。

请求参数

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

名称 类型 含义
userNames String[] 根据应用注册者名称查询。
tags String[] 根据应用标签过滤。
type AppType 根据应用类型过滤。
currentUser User 根据当前登录的用户过滤。
orderBy AppOrderBy 根据排序类型过滤。
orderType OrderType 根据升序还是降序过滤。
keywords String[] 根据关键词查询。
shareToMe Boolean 是否查询直接分享给我的资源。该参数已过期。
searchScope SearchScope 根据共享范围过滤。
permissionType String 根据权限类型过滤。权限类型包括 SEARCH(可检索)、READ(可查看)、DELETE(可删除)。
isNotInDir Boolean 根据是否是未分组的进行过滤,默认值为 false。如果为 true,则返回所有未分组的场景列表信息;如果为 false,则返回全部的场景列表信息。
未分组是指未添加到目录中的场景列表资源。
returnSubDir Boolean 是否查询子目录的资源。true 表示返回当前查询目录及其子目录的资源,false 表示仅返回当前目录的资源。
filterFields FilterFields[] 用于关键字查询时的字段过滤。字段名称需大写。例如:根据应用名称的关键字符过滤,则需要设置 keywords=["231"]&filterFields=["APPNAME"]。
pageSize int 根据分页大小过滤。
dirIds Integer[] 根据目录 id 过滤。
checkStatus CheckStatus 根据审核状态过滤。
currentPage int 根据分页页码过滤。
createStart Long 查询此时间值及此时间值之后创建的应用,如果为null或者小于0,则起始时间不限制。
createEnd Long 查询此时间值及此时间值之前创建的应用,如果为null或者小于0,则截止时间不限制。

响应结构

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

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

响应示例

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

{

    "total": 4,

    "totalPage": 1,

    "pageSize": 9,

    "searchParameter": {

        "permissionType": null,

        "orderType": "ASC",

        "keywords": null,

        "returnSubDir": null,

        "shareToMe": null,

        "searchScope": null,

        "orderBy": null,

        "isNotInDir": false,

        "pageSize": 9,

        "dirIds": null,

        "filterFields": null,

        "departmentIds": [],

        "type": null,

        "createStart": null,

        "tags": null,

        "checkStatus": null,

        "currentUser": null,

        "createEnd": null,

        "groupIds": [],

        "userNames": null,

        "currentPage": 1,

        "resourceIds": null

    },

    "currentPage": 1,

    "content": [

        {

            "thumbnail": "http://localhost:8190/iportal/services/../web/static/portal/img/app/defaultThumbnail.jpg",

            "address": "http://localhost:8190/iportal/apps/dataviz/edit.html",

            "contactInfo": null,

            "appName": "DataViz",

            "authorizeSetting": null,

            "description": "数据上图,方便用户在线制作与协同分享地图资源。",

            "updateTime": 1545791449839,

            "verifyReason": null,

            "userName": "supermap_cloud",

            "type": "WEBAPP",

            "tags": [

                "超图"

            ],

            "checkUser": null,

            "checkUserNick": null,

            "checkStatus": "SUCCESSFUL",

            "checkTime": null,

            "createTime": 1502937349060,

            "nickname": "supermap_cloud",

            "detailImages": null,

            "id": 1

        },

        {

            "thumbnail": "http://localhost:8190/iportal/services/../web/static/portal/img/app/defaultThumbnail.jpg",

            "address": "http://localhost:8190/iportal/apps/insights/edit.html",

            "contactInfo": null,

            "appName": "DataInsights",

            "authorizeSetting": null,

            "description": "数据洞察,对地理数据进行可视化和空间分析,挖掘地理数据价值。",

            "updateTime": 1545791449839,

            "verifyReason": null,

            "userName": "supermap_cloud",

            "type": "WEBAPP",

            "tags": [

                "超图"

            ],

            "checkUser": null,

            "checkUserNick": null,

            "checkStatus": "SUCCESSFUL",

            "checkTime": null,

            "createTime": 1502937349060,

            "nickname": "supermap_cloud",

            "detailImages": null,

            "id": 2

        },

        {

            "thumbnail": "http://localhost:8190/iportal/services/../web/static/portal/img/app/defaultThumbnail.jpg",

            "address": "http://localhost:8190/iportal/apps/mapdashboard/v2/index.html?action=create",

            "contactInfo": null,

            "appName": "MapDashboard",

            "authorizeSetting": null,

            "description": "地图大屏,交互式操作快速创建二三维地图应用。",

            "updateTime": 1545791449839,

            "verifyReason": null,

            "userName": "supermap_cloud",

            "type": "WEBAPP",

            "tags": [

                "超图"

            ],

            "checkUser": null,

            "checkUserNick": null,

            "checkStatus": "SUCCESSFUL",

            "checkTime": null,

            "createTime": 1502937349060,

            "nickname": "supermap_cloud",

            "detailImages": null,

            "id": 3

        },

        {

            "thumbnail": "http://localhost:8190/iportal/services/../web/static/portal/img/app/defaultThumbnail.jpg",

            "address": "http://localhost:8190/iportal/apps/earth/index.html",

            "contactInfo": null,

            "appName": "Earth",

            "authorizeSetting": null,

            "description": "三维地球,在线浏览、制作、保存和分享三维场景。",

            "updateTime": 1545791449839,

            "verifyReason": null,

            "userName": "supermap_cloud",

            "type": "WEBAPP",

            "tags": [

                "超图"

            ],

            "checkUser": null,

            "checkUserNick": null,

            "checkStatus": "SUCCESSFUL",

            "checkTime": null,

            "createTime": 1502937349060,

            "nickname": "supermap_cloud",

            "detailImages": null,

            "id": 4

        }

    ]

}

如果希望获取指定的应用列表信息,如根据应用名称的关键字符过滤,则需要设置 keywords=["DataViz"]&filterFields=["APPNAME"],即对 apps 资源:http://localhost:8190/iportal/web/apps.rjson?keywords=["DataViz"]&filterFields=["APPNAME"] 执行 GET 请求,返回的 rjson 格式的资源表述如下:

{

    "total": 1,

    "totalPage": 1,

    "pageSize": 9,

    "searchParameter": {

        "permissionType": null,

        "orderType": "ASC",

        "keywords": [

            "DataViz"

        ],

        "returnSubDir": null,

        "shareToMe": null,

        "searchScope": null,

        "orderBy": null,

        "isNotInDir": null,

        "pageSize": 9,

        "dirIds": null,

        "filterFields": [

            "APPNAME"

        ],

        "departmentIds": [],

        "type": null,

        "createStart": -1,

        "tags": null,

        "checkStatus": null,

        "currentUser": null,

        "createEnd": -1,

        "groupIds": [],

        "userNames": null,

        "currentPage": 1,

        "resourceIds": null

    },

    "currentPage": 1,

    "content": [

        {

            "thumbnail": "http://localhost:8190/iportal/services/../web/static/portal/img/app/defaultThumbnail.jpg",

            "address": "http://localhost:8190/iportal/apps/dataviz/edit.html",

            "contactInfo": null,

            "appName": "DataViz",

            "authorizeSetting": null,

            "description": "数据上图,方便用户在线制作与协同分享地图资源。",

            "updateTime": 1545791449839,

            "verifyReason": null,

            "userName": "supermap_cloud",

            "type": "WEBAPP",

            "tags": [

                "超图"

            ],

            "checkUser": null,

            "checkUserNick": null,

            "checkStatus": "SUCCESSFUL",

            "checkTime": null,

            "createTime": 1502937349060,

            "nickname": "supermap_cloud",

            "detailImages": null,

            "id": 1

        }

    ]

}

POST 请求

注册一个新的应用程序。

请求参数

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

名称 类型 含义
tags List<String> 注册的应用程序的标签。
appName String 注册的应用程序的名称。
address String 注册的应用程序的地址。
description String 注册的应用程序的描述信息。
type AppType 注册的应用程序的类型。
contactInfo ContactInfo 注册的应用程序的联系人信息。
detailImages String[] 注册的应用程序的图片。
thumbnail String 注册的应用程序的缩略图。
authorizeSetting List<IportalAuthorizeEntity> 授权信息。应用的权限类型包括:DELETE(查看/编辑/删除)、READ(查看)、READWRITE(查看/编辑)。

响应结构

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

字段 类型 说明
newResourceID String 注册新应用的 id。
newResourceLocation String 注册新应用的 URI。
succeed boolean 注册新应用是否成功。

响应示例

对 apps  资源:http://localhost:8190/iportal/web/apps.rjson 执行 POST 请求,注册一个新的应用程序,发送请求体如下:

{

    "detailImages": [],

    "tags": [

        "超图"

    ],

    "appName": "doc",

    "address": "http://doc.iserver.com",

    "thumbnail": "",

    "description": "",

    "type": "WEBAPP",

    "authorizeSetting": [

        {

            "permissionType": "READ",

            "entityType": "USER",

            "entityName": "GUEST",

            "entityId": null

        }

    ],

    "contactInfo": {

        "contactUser": "",

        "contactOrganization": "",

        "email": ""

    }

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

{

    "succeed": true,

    "newResourceID": "3",

    "newResourceLocation": "http://localhost:8190/iportal/web/apps/3"

}

DELETE 请求

删除应用程序,支持批量删除应用程序。url 中传递需要删除应用程序的 id 数组。

响应结构

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

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

响应示例

对 apps 资源:http://localhost:8190/iportal/web/apps.rjson?ids=[1,2] 执行 DELETE 请求,批量删除 id 为 1 和 2 的两个应用程序,返回的 rjson 格式响应结果如下:

{ "succeed": true}

HEAD 请求

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

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

请参见