publishStatus


URI

<myData_uri>/publishstatus[.<format>]

支持的方法

GETPUTHEAD

父资源

mydata

介绍

publishStatus 资源是服务(通过上传数据发布的服务)的发布状态资源。通过发送 GET 请求,可以查询服务(通过上传数据发布的服务)的发布状态。通过发送 PUT 请求,可以更新服务(通过上传数据发布的服务)的发布状态,包括:发布服务、重新发布服务、取消单个服务的发布(即:删除单个服务)、取消全部服务的发布(即:删除指定数据发布的全部服务),下面将分别介绍这几种发布状态。

支持的方法:

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

资源层次

HTTP 请求方法

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

http://supermapiportal:8190/iportal/web/mycontent/datas/{id}/publishstatus.rjson

GET 请求

查询服务(通过上传数据发布的服务)的发布状态。

请求参数

请求参数必须包含在 URI 中。

名称 类型 含义

forPublish

Boolean 查询数据是否发布成了服务。
dataServiceId String 发布服务的ID,即:serviceId 的值,也是该服务的唯一标识。

响应结构

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

字段 类型 说明
succeed boolean 查询服务的发布状态是否成功。
error Httperror 出错信息,如果查询服务的发布状态成功,则没有本字段。

响应示例

对 publishstatus 资源:http://localhost:8190/iportal/web/mycontent/datas/1/publishstatus.rjson?dataServiceId=map_ChengShi0407&forPublish=true 执行 GET 请求,返回的 rjson 格式的资源表述如下:

{"succeed":true}

PUT 请求

更新服务(通过上传数据发布的服务)的发布状态。

请求参数

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

名称 类型 含义

publish

boolean true 代表发布,反之,则代表取消发布。

此外,还需在 url 中传递如下参数:

名称 类型 含义

serviceType

DataServiceType 发布的服务类型,目前支持发布的服务类型包括:RESTDATA, RESTMAP, RESTREALSPACE。

dataServiceId

String 发布的服务 id。

dataServiceName

String 发布的服务名称,如果不传递此参数,系统将自动生成服务名称。

响应结构

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

字段

类型 说明

succeed

boolean 是否成功更新发布状态。true 代表更新成功,反之,则更新失败。

响应示例

更新服务的发布状态包括:发布服务、重新发布服务、取消单个服务的发布(即:删除单个服务)、取消全部服务的发布(即:删除指定数据发布的全部服务),不同的发布状态传递的参数不同,下面就更新服务的发布状态分别举例说明。

1. 发布服务

用于上传数据发布服务,通过 services 资源的 GET 请求可以查看发布后的服务地址。需要在 url 和请求体中传递如下参数:

对 publishstatus 资源:http://localhost:8190/iportal/web/mycontent/datas/1929877332/publishstatus.json?serviceType=RESTMAP,RESTDATA 执行 PUT 请求,发送的请求体如下:

true

返回 rjson 格式的响应结果为:

{"succeed":true}

2. 重新发布单个服务

用于某个服务发布失败后,重新发布该服务,通过 services 资源的 GET 请求可以查看发布后的服务地址。需要在 url 和请求体中传递如下参数:

对 publishstatus 资源:http://localhost:8190/iportal/web/mycontent/datas/1929877332/publishstatus.json?serviceType=RESTMAP&dataServiceId=map_city 执行 PUT 请求,发送的请求体如下:

true

返回 rjson 格式的响应结果为:

{"succeed":true}

3. 取消发布单个服务(即:删除单个服务)

用于取消发布的单个服务,即:从门户中删除该服务。需要在 url 和请求体中传递如下参数:

对 publishstatus 资源:http://localhost:8190/iportal/web/mycontent/datas/1929877332/publishstatus.json?dataServiceId=map_city 执行 PUT 请求,发送的请求体如下:

false

返回 rjson 格式的响应结果为:

{"succeed":true}

4. 取消指定数据发布的全部服务(即:删除全部服务)

用于取消指定数据发布的全部服务,即:从门户中删除指定数据发布的服务。只需在请求体中传递如下参数:

对 publishstatus 资源:http://localhost:8190/iportal/web/mycontent/datas/1929877332/publishstatus.json 执行 PUT 请求,发送的请求体如下:

false

返回 rjson 格式的响应结果为:

{"succeed":true}

HEAD 请求

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

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

请参见