themes


URI

<uiConfig_uri>/themes[.<format>]

支持的方法

GETPOSTPUTHEAD

父资源

uiConfig

子资源

themeSetting

介绍

themes 是 iPortal 的主题风格列表资源,包括 iPortal 所有主题风格的名称、标签以及 iPortal 当前默认设置的主题风格。

支持的方法:

支持的表述格式:JSON。

资源层次

HTTP 请求方法

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

http://supermapiportal:8190/iportal/web/uiconfig/themes.json

GET 请求

查询 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"

}

POST 请求

添加一个新的主题风格,只有  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}

PUT 请求

编辑 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}

HEAD 请求

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

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

请参见