# 根据权限获取菜单列表

# 接口描述:

  • 根据权限获取菜单列表,等同于根据当前账号的权限获取对应的导航菜单数据。

# 请求 URL:

  • http|https://host/api/v1/menu/method/get.menu.auth.list/

# 请求方式:

  • GET
  • POST

# 是否授权:

# 业务参数:

参数名 类型 是否必须 范围值 默认值 示例值 描述
menu_id integer egt:0 0 491 菜单编号
module string in:api,admin,home api 所属模块
level integer egt:0 0 菜单深度
is_navi integer in:0,1 1 是否属于导航菜单 0=否 1=是
is_layer integer in:0,1 1 1 是否返回本级菜单 0=否 1=是
status integer in:0,1 1 1 菜单状态 0=禁用 1=启用

# 响应参数:

参数名 类型 是否返回 示例值 描述
status integer 200 状态码
message string success 消息信息
data array [] 返回数组
data 类型 是否返回 示例值 描述
menu_id string 513 菜单编号
parent_id integer 0 菜单上级编号
name string 添加广告 菜单名称
alias string 添加 菜单别名
icon string  菜单图标
remark string 添加一个广告 菜单备注
module string admin 所属模块
type integer 0 链接类型 0=模块 1=外链
url string api/v1/ads/add.ads.item 链接地址
params string ?id=1&type=1 链接参数
target string _self 打开方式
is_navi integer 0 是否属于导航菜单 0=否 1=是
sort integer 50 菜单排序值
status integer 1 菜单状态 0=禁用 1=启用
children_total integer 5 该菜单下子级菜单数的合计
level integer 0 该菜单的层级深度

# 响应示例:

{
  "status": 200,
  "message": "success",
  "data": [
    {
      "menu_id": 491,
      "parent_id": 0,
      "name": "验证码",
      "alias": "",
      "icon": "",
      "remark": "",
      "module": "api",
      "type": 0,
      "url": "",
      "params": "",
      "target": "_self",
      "is_navi": 1,
      "sort": 50,
      "status": 1,
      "children_total": 2,
      "level": 0
    },
    {
      "menu_id": 492,
      "parent_id": 491,
      "name": "使用验证码",
      "alias": "",
      "icon": "",
      "remark": "",
      "module": "api",
      "type": 0,
      "url": "api/v1/verification/use.verification.item",
      "params": "",
      "target": "_self",
      "is_navi": 1,
      "sort": 50,
      "status": 1,
      "children_total": 0,
      "level": 1
    },
    {
      "menu_id": 493,
      "parent_id": 491,
      "name": "发送短信验证码",
      "alias": "",
      "icon": "",
      "remark": "",
      "module": "api",
      "type": 0,
      "url": "api/v1/verification/send.verification.sms",
      "params": "",
      "target": "_self",
      "is_navi": 1,
      "sort": 50,
      "status": 1,
      "children_total": 0,
      "level": 1
    }
  ]
}

# 备注:

  1. 该接口支持条件搜索,如果不带入业务参数则使用默认值。

  2. menu_id参数值为 0 表示获取所有菜单,如果参数值非 0 表示从指定的编号开始获取。

  3. module参数的值是不固定的,可根据模块需求决定,在配置文件application\extra\CareyShop.php中可进行配置。

参数示例: 假设当前账号拥有下列权限菜单列表:

最顶层菜单(ID=0)
├─ A1 // (ID=1)
│  └─ A2
│     └─ A3
└─ B1
   └─ B2
      └─ B3
  1. 不传入level参数时表示返回所有层级的菜单列表。

  2. level值为 0 时返回A1 B1,值为 1 时返回A1 A2 B1 B2,值为 2 时返回A1 A2 A3 B1 B2 B3

  3. menu_id值为A1(ID=1),并且level值为 0 时返回A1,值为 1 时返回A1 A2,因为is_layer参数默认为 1,所以会返回本级。如果将is_layer参数值设为 0 并且level值为 0 时返回A2,值为 1 时返回A2 A3