<fileManager_uri>/list[.<format>]
fileList 资源是获取指定路径的指定类型文件的列表及当前目录的文件夹列表。通过发送 DELETE 请求,删除指定路径下的一个文件夹或一个文件。出于安全考虑,只能删除目录名为 publishPath 目录下的一个文件夹或一个文件。publishPath 目录位于 %SuperMap iPortal_HOME%\webapps\iportal 目录下或者 %SuperMap iServer_HOME%\webapps\iserver 目录下。
支持的方法:
支持的表述格式:rjson、json、xml。
对如下 URI 执行 HTTP 请求,以 rjson 输出格式为例加以说明,其中,supermapiserver 是服务器名。
http://supermapiserver:8090/iserver/manager/filemanager/list.rjson?path=../../samples/data/Realspace&filters=*.smwu
获取指定路径的指定类型文件的列表或文件夹列表。
URI 中传递参数如下:
名称 | 类型 | 含义 |
path | String | 【必选参数】
文件路径,如 path=../../samples/data。 可以传绝对路径或相对路径,相对路径的起算目录为 iServer 应用目录,如 Package 包中为%SuperMap iServer_HOME%\webapp\ iserver 目录 。 |
filters | String | 【可选参数】
文件类型过滤,支持多种格式过滤,如 filters=*.smwu,或者 filters=*.smwu;*.sxwu。 默认为空时,显示当前路径下的全部文件和文件夹。 |
目标路径下有文件或文件夹时,服务器返回文件列表信息,该信息是由各个文件或文件夹的描述信息组成的数组。每个文件或文件夹的描述信息包含以下字段:
字段 | 类型 | 说明 |
fileName | String | 文件或文件夹目录的名称。 |
filePath | String | 文件或文件夹目录的绝对路径。 |
fileSize | long | 文件的大小,如果列出的是文件夹目录信息,则文件大小默认显示为0字节。 |
isDirectory | boolean | 是否是文件夹目录,默认为 false。 |
如果目标路径下没有将查询的文件或文件夹,则返回的响应结果包含以下字段:
字段 | 类型 | 说明 |
succeed | boolean | 分析是否成功,此处为 false。 |
error | HttpError | 如果指定的文件或文件夹目录不存在,则返回错误信息,响应码为400。如:
"error": { "code": 400, "errorMsg": "文件夹 \\nb\\oo.txt 不存在。" } |
对本机服务器发送如下请求查看“../../samples/data”下的文件或文件夹目录,发送 GET 请求如下:
http://localhost:8090/iserver/manager/filemanager/list.rjson?path=../../samples/data
则返回的 rjson 格式的响应结果如下:
[
{
"fileName": "China400",
"filePath": "../../samples/data/China400/",
"fileSize": 0,
"isDirectory": true
},
{
"fileName": "City",
"filePath": "../../samples/data/City/",
"fileSize": 0,
"isDirectory": true
},
{
"fileName": "NetworkAnalyst",
"filePath": "../../samples/data/NetworkAnalyst/",
"fileSize": 0,
"isDirectory": true
},
{
"fileName": "Realspace",
"filePath": "../../samples/data/Realspace/",
"fileSize": 0,
"isDirectory": true
},
{
"fileName": "SpatialAnalyst",
"filePath": "../../samples/data/SpatialAnalyst/",
"fileSize": 0,
"isDirectory": true
},
{
"fileName": "World",
"filePath": "../../samples/data/World/",
"fileSize": 0,
"isDirectory": true
}
]
根据上述响应结果,进一步查看“../../samples/data/Realspace”中 sxwu 或 smwu 格式的工作空间,发送请求如下:
http://localhost:8090/iserver/manager/filemanager/list.rjson?path=../../samples/data/Realspace&filters=*.sxwu;*.smwu
则返回的 rjson 格式的响应结果如下:
[
{
"fileName": "Balloon",
"filePath": "../../samples/data/Realspace/Balloon/",
"fileSize": 0,
"isDirectory": true
},
{
"fileName": "BeijingModel.smwu",
"filePath": "../../samples/data/Realspace/BeijingModel.smwu",
"fileSize": 2488628,
"isDirectory": false
},
{
"fileName": "Building@CBD",
"filePath": "../../samples/data/Realspace/Building@CBD/",
"fileSize": 0,
"isDirectory": true
},
{
"fileName": "ConventionCenter@ConventionCenter",
"filePath": "../../samples/data/Realspace/ConventionCenter@ConventionCenter/",
"fileSize": 0,
"isDirectory": true
},
{
"fileName": "Ground_1@CBD",
"filePath": "../../samples/data/Realspace/Ground_1@CBD/",
"fileSize": 0,
"isDirectory": true
},
{
"fileName": "Ground_2@CBD",
"filePath": "../../samples/data/Realspace/Ground_2@CBD/",
"fileSize": 0,
"isDirectory": true
},
{
"fileName": "Lake@CBD",
"filePath": "../../samples/data/Realspace/Lake@CBD/",
"fileSize": 0,
"isDirectory": true
},
{
"fileName": "NightOlympic",
"filePath": "../../samples/data/Realspace/NightOlympic/",
"fileSize": 0,
"isDirectory": true
},
{
"fileName": "OlympicGreen",
"filePath": "../../samples/data/Realspace/OlympicGreen/",
"fileSize": 0,
"isDirectory": true
},
{
"fileName": "RealspaceSample",
"filePath": "../../samples/data/Realspace/RealspaceSample/",
"fileSize": 0,
"isDirectory": true
},
{
"fileName": "RealspaceSample.sxwu",
"filePath": "../../samples/data/Realspace/RealspaceSample.sxwu",
"fileSize": 222952,
"isDirectory": false
},
{
"fileName": "Tree@CBD",
"filePath": "../../samples/data/Realspace/Tree@CBD/",
"fileSize": 0,
"isDirectory": true
},
{
"fileName": "underground",
"filePath": "../../samples/data/Realspace/underground/",
"fileSize": 0,
"isDirectory": true
}
]
删除指定路径下的一个文件夹或一个文件。出于安全考虑,只能删除目录名为 publishPath 目录下的一个文件夹或一个文件。publishPath 目录位于 %SuperMap iPortal_HOME%\webapps\iportal 目录下或者 %SuperMap iServer_HOME%\webapps\iserver 目录下,指定路径是相对于 publishPath 目录的相对路径。
对 fileList 资源执行 DELETE 请求,返回的操作结果表述的结构如下(表述在响应消息的实体主体里):
字段 | 类型 | 说明 |
succeed | boolean | 删除指定路径下的一个文件夹或一个文件是否成功。 |
对 fileList 资源:http://localhost:8090/iserver/manager/filemanager/list.rjson?path=./city0628.zip 执行 DELETE 请求,删除目录名为 publishPath 目录下的 city0628.zip 文件,则返回 rjson 格式的响应结果如下:
{"succeed": true}
返回跟 GET 请求一样的 HTTP 响应头,但是没有响应实体。可以在不必传输整个响应内容的情况下,获取包含在响应消息头中的元数据信息。元数据信息包括媒体类型,字符编码,压缩编码,实体内容长度等。
HEAD 请求可以用来判断 fileList 资源是否存在,或者客户端是否有权限访问 fileList 资源。通过对加.<format>的 URI 执行 HEAD 请求,还可以快速判断 fileList 资源是否支持<format>格式的表述。