跳到正文
SSaleSass开发者文档
管理后台
文档中心接口文档
接口文档

安装、重装、卸载、启停和菜单开关(addon.manage)

/api/v1/addons/{key}/actions/{action}

POST/api/v1/addons/{key}/actions/{action}

调用说明

需要 addon.manage。action 只允许 install、reinstall、uninstall、enable、disable、menu。示例演示安装,角色 ID 应先从角色组接口获取。

安装必须传 page_roles;重装可省略以保留原授权;其他动作不能携带页面配置。show_menu 必须为 JSON 布尔值。卸载保留业务数据并清除平台授权。

路径与请求头参数

参数位置类型必填说明
keypathstring是^[a-z][a-z0-9_]{1,79}$
actionpathstring是install / reinstall / uninstall / enable / disable / menu
X-CSRF-Tokenheaderstring是后台页面 meta[name="csrf-token"] 的当前会话令牌

JSON 请求体

install 必须传 page_roles;reinstall 不传时保留原授权;其他操作不能传 page_roles。

参数类型必填说明
show_menuboolean按操作要求参见调用说明
page_rolesobject按操作要求须包含全部页面。每页 view 为可查看角色,manage 为可操作角色且必须是 view 的子集;两者为空时仅管理员。

Axios 请求示例

在已登录后台页面中调用;示例角色 ID 仅用于说明,请替换为当前系统中的实际角色。

javascript
axios.post('/api/v1/addons/ledger_management/actions/install', {
    "show_menu": true,
    "page_roles": {
        "tasks": {
            "view": [
                3
            ],
            "manage": [
                3
            ]
        },
        "categories": {
            "view": [],
            "manage": []
        },
        "fields": {
            "view": [],
            "manage": []
        },
        "templates": {
            "view": [],
            "manage": []
        },
        "domains": {
            "view": [],
            "manage": []
        }
    }
});

响应结构示例

以下为结构示例,不是实时接口结果;列表和文档对象可能省略部分项目。

json
{
    "code": 0,
    "message": "操作成功",
    "data": {
        "menus": []
    }
}

响应状态

HTTP 状态含义
200成功
401未登录或会话失效
403没有权限
419CSRF 令牌无效
422参数错误
503数据库结构需要升级
SaleSass 开发者文档 · 与项目内的接口契约同步