<directories_uri>/{id}[.<format>]
directory 资源是单个目录资源管理器。所有用户(包含匿名用户)通过发送 GET 请求,可以获取单个目录下的所有目录结构列表信息以及资源列表信息;管理员通过发送 POST 请求,可以在单个目录下创建子目录;管理员通过发送 PUT 请求,可以重命名目录;管理员通过发送 DELETE 请求,可以删除单个目录及其子目录,目录中的资源也会随之移除或从门户中删除。
支持的方法:
支持的表述格式:RJSON、JSON、HTML、XML。
对如下 URI 执行 HTTP 请求,以 rjson 输出格式为例加以说明,其中,supermapiportal 是服务器名。
http://supermapiportal:8190/iportal/web/directories/{id}.rjson
获取单个目录下的所有目录结构列表信息以及资源列表信息。
对 directory 资源执行 GET 请求,获取指定单个目录下的所有目录结构列表信息以及资源列表信息,由以下字段组成:
字段 | 类型 | 说明 |
basicDirInfo | BasicDirInfo | 目录的基本信息。 |
basicDirInfos | List<BasicDirInfo> | 目录下的子目录列表信息。 |
dirResources | List<DirectoryResource> | 目录下的资源列表信息。 |
对 directory 资源:http://localhost:8190/iportal/web/directories/1.rjson 执行 GET 请求,返回的 rjson 格式的资源表述如下:
{
"basicDirInfo": {
"createTime": 1434420488920,
"description": null,
"dirCreator": "admin",
"dirLevel": 1,
"dirName": "土地利用",
"dirType": "MAP",
"icon": null,
"id": 1,
"parentDirId": null,
"updateTime": 1434420488920,
"weight": 1
},
"basicDirInfos": [
{
"createTime": 1434426280511,
"description": null,
"dirCreator": "admin",
"dirLevel": 2,
"dirName": "2014",
"dirType": "MAP",
"icon": null,
"id": 6,
"parentDirId": 1,
"updateTime": 1434426280511,
"weight": 1
},
{
"createTime": 1434426285965,
"description": null,
"dirCreator": "admin",
"dirLevel": 2,
"dirName": "2013",
"dirType": "MAP",
"icon": null,
"id": 7,
"parentDirId": 1,
"updateTime": 1434426285965,
"weight": 2
}
],
"dirResources": null
}
在单个目录下创建子目录。
发送请求时,需要在请求体中传递如下参数:
名称 | 类型 | 含义 |
dirName |
String | 【必选参数】
子目录名称。 |
dirType | DirectoryResourceType | 【可选参数】
目录类型。如果值为空 null 或者不传该参数,会默认与它的父目录是相同的目录类型。 |
icon | String | 【可选参数】
目录的图标。可以为空值:null 或者不传该参数。为空值或者不传该参数:表示不上传目录图标,采用默认的图标。 |
description | String | 【可选参数】
目录的描述信息。可以为空值:null 或者不传该参数。 |
返回的资源表述结构如下:
字段 | 类型 | 说明 |
newResourceID | String | 创建新子目录的 id。 |
newResourceLocation | String | 创建新子目录的 URI。 |
succeed | boolean | 创建新子目录是否成功。 |
对 directory 资源:http://localhost:8190/iportal/web/directories/34.rjson 执行 POST 请求,创建新的子目录,目录类型为 MAP,目录名称为:2012年。发送请求体如下:
{
"dirName": "2012年",
"dirType": "MAP"
}
则返回的 rjson 格式响应结果如下:
{
"succeed": true,
"newResourceID": "37",
"newResourceLocation": "http://192.168.120.63:8092/iserver/web/directories/37"
}
重命名目录名称。
发送请求时,需要在请求体中传递如下参数:
名称 | 类型 | 含义 |
dirName |
String | 【必选参数】
目录名称。 |
返回的资源表述结构如下:
字段 | 类型 | 说明 |
succeed | boolean | 重命名目录是否成功。 |
error | Httperror | 出错信息,如果重命名目录成功,则没有本字段。 |
对 directory 资源:http://localhost:8190/iportal/web/directories/34.rjson 执行 PUT 请求,重命名目录名称。发送请求体如下:
{
"dirName": "土地利用现状"
}
则返回的 rjson 格式响应结果如下:
{
"succeed": true
}
删除指定 id 的目录信息。url 中需传递如下字段:
字段 | 类型 | 说明 |
isDeleteResources | boolean | 是否从门户中删除资源。其中,False 表示从该目录中移除资源,true 表示从门户中删除该目录中的资源。 |
返回的资源表述结构如下:
字段 | 类型 | 说明 |
succeed | boolean | 删除目录是否成功。 |
error | Httperror | 出错信息,如果删除目录成功,则没有本字段。 |
对 directory 资源:http://localhost/iportal/web/directories/34.rjson?isDeleteResources:false 执行 DELETE 请求,删除目录 id 为 34 的所有目录列表信息,并且从删除的目录中移除资源,返回的 rjson 格式响应结果如下:
{ "succeed": true}
返回跟 GET 请求一样的 HTTP 响应头,但是没有响应实体。可以在不必传输整个响应内容的情况下,获取包含在响应消息头中的元数据信息。元数据信息包括媒体类型,字符编码,压缩编码,实体内容长度等。
HEAD 请求可以用来判断 directory 资源是否存在,或者客户端是否有权限访问 directory 资源。通过对加.<format>的 URI 执行 HEAD 请求,还可以快速判断 directory 资源是否支持<format>格式的表述。