<uiConfig_uri>/themes[.<format>]
themes 是 iPortal 的主题风格列表资源,包括 iPortal 所有主题风格的名称、标签以及 iPortal 当前默认设置的主题风格。
支持的方法:
支持的表述格式:JSON。
对如下 URI 执行 HTTP 请求,以 json 输出格式为例加以说明,其中,supermapiportal 是服务器名。
http://supermapiportal:8190/iportal/web/uiconfig/themes.json
查询 iPortal 的主题风格列表信息。
对 themes 资源执行 GET 请求,获取 iPortal 主题风格的列表信息,返回的资源表述的结构如下:
名称 | 类型 | 含义 |
themes | String[] | iPortal 的主题风格列表信息。 |
default | String | iPortal 默认使用的主题风格。 |
对 themes 资源:http://localhost:8190/iportal/web/uiconfig/themes.json 执行 GET 请求,返回的 json 格式的资源表述如下:
{
"themes": [
{
"name": "ThemeSetting_blue",
"label": "蓝色主题"
},
{
"name": "ThemeSetting_orange",
"label": "橙色主题"
}
],
"default": "ThemeSetting_blue"
}
添加一个新的主题风格,只有 iPortal 管理员有权限添加新的主题。
发送请求时,需要在请求体中传递如下参数:
名称 | 类型 | 含义 |
name | String | 新增主题的名称。 |
label | String | 新增主题的标签。 |
content | String | 新增主题的具体配置 |
返回的资源表述结构如下:
字段 | 类型 | 说明 |
succeed | boolean | 添加主题风格是否成功。 |
error | Httperror | 出错信息,如果添加成功,则没有本字段。 |
对 themes 资源:http://localhost:8190/iportal/web/uiconfig/themes.json 执行 POST 请求,添加一个新的主题,发送请求体如下:
{
"name": "custom",
"label": "自定义主题",
"content": {
"themeSetting": {
"header": {
"backgroundColor": "rgb(255, 255, 255)",
"color": "rgb(51, 51, 51)",
"hoverBackgroundColor": "#ef5555",
"hoverFontColor": "#0161b7"
},
"resourceHeader": {
"backgroundColor": "rgb(23,11,11)",
"color": "#ffffff",
"hoverBannerFontColor": "#40a9ff"
},
"resourceAside": {
"borderColor": "#E5E5E5",
"activeBackgroundColor": "#f4f4f4"
},
"body": {
"backgroundColor": "#f4f4f4"
},
"button": {
"primaryColor": "#127fdc",
"textColor": "rgba(0, 0, 0, .65)",
"borderColorBase": "#d9d9d9"
},
"footer": {
"backgroundColor": "rgb(255, 255, 255)",
"color": "rgb(51, 51, 51)",
"borderColor": "#f4f4f4"
}
}
}
}
返回的 json 格式的资源表述如下:
{"succeed": true}
编辑 iPortal 的主题风格列表,支持 iPortal 管理员通过 PUT 请求删除主题、设置默认主题等。
发送请求时,需要在请求体中传递如下参数:
名称 | 类型 | 含义 |
themes | String[] | 编辑后的 iPortal 主题风格列表。 |
default | String | iPortal 默认使用的主题风格。 |
返回的资源表述结构如下:
字段 | 类型 | 说明 |
succeed | boolean | 编辑 iPortal 主题风格列表是否成功。 |
error | Httperror | 出错信息,如果编辑成功,则没有本字段。 |
对 themes 资源:http://localhost:8190/iportal/web/uiconfig/themes.json 执行 PUT 请求,将一个自定义的主题风格设置为 iPortal 默认主题,发送请求体如下:
{
"themes": [
{
"name": "ThemeSetting_blue",
"label": "蓝色主题"
},
{
"name": "ThemeSetting_orange",
"label": "橙色主题"
},
{
"name": "ThemeSetting_custom",
"label": "自定义主题"
}
],
"default": "ThemeSetting_custom"
}
返回的 json 格式的资源表述如下:
{"succeed": true}
返回跟 GET 请求一样的 HTTP 响应头,但是没有响应实体。可以在不必传输整个响应内容的情况下,获取包含在响应消息头中的元数据信息。元数据信息包括媒体类型,字符编码,压缩编码,实体内容长度等。
HEAD 请求可以用来判断 themes 资源是否存在,或者客户端是否有权限访问 themes 资源。通过对加.<format>的 URI 执行 HEAD 请求,还可以快速判断 themes 资源是否支持<format>格式的表述。