Skip to content

角色管理 API

获取角色列表

http
GET /api/admin/roles
Authorization: Bearer {token}

查询参数

参数类型说明
pageint页码
per_pageint每页数量
keywordstring关键词搜索

响应示例

json
{
    "code": 200,
    "message": "success",
    "data": {
        "data": [
            {
                "id": 1,
                "name": "super_admin",
                "guard_name": "admin",
                "created_at": "2024-01-01 00:00:00"
            }
        ],
        "total": 5
    }
}

错误响应

401 未认证

json
{
    "code": 401,
    "message": "未认证",
    "data": null
}

403 无权限

json
{
    "code": 403,
    "message": "无权限访问",
    "data": null
}

创建角色

http
POST /api/admin/roles
Authorization: Bearer {token}
Content-Type: application/json

请求参数

参数类型必填说明
namestring角色标识
guard_namestringGuard,默认 admin
permission_idsarray权限ID列表

响应示例

json
{
    "code": 200,
    "message": "创建成功",
    "data": {
        "id": 2,
        "name": "editor",
        "guard_name": "admin"
    }
}

错误响应

401 未认证

json
{
    "code": 401,
    "message": "未认证",
    "data": null
}

403 无权限

json
{
    "code": 403,
    "message": "无权限访问",
    "data": null
}

422 验证失败

json
{
    "code": 422,
    "message": "验证失败",
    "data": {
        "errors": {
            "name": ["角色标识不能为空"],
            "permission_ids": ["权限ID必须是数组"]
        }
    }
}

获取角色详情

http
GET /api/admin/roles/{id}
Authorization: Bearer {token}

响应示例

json
{
    "code": 200,
    "message": "success",
    "data": {
        "id": 1,
        "name": "super_admin",
        "permissions": [
            {"id": 1, "name": "users.list"},
            {"id": 2, "name": "users.create"}
        ]
    }
}

更新角色

http
PUT /api/admin/roles/{id}
Authorization: Bearer {token}
Content-Type: application/json

请求参数

参数类型必填说明
namestring角色标识
permission_idsarray权限ID列表

响应示例

json
{
    "code": 200,
    "message": "更新成功",
    "data": null
}

删除角色

http
DELETE /api/admin/roles/{id}
Authorization: Bearer {token}

响应示例

json
{
    "code": 200,
    "message": "删除成功",
    "data": null
}

错误响应

401 未认证

json
{
    "code": 401,
    "message": "未认证",
    "data": null
}

403 无权限

json
{
    "code": 403,
    "message": "无权限访问",
    "data": null
}

404 资源不存在

json
{
    "code": 404,
    "message": "角色不存在",
    "data": null
}

获取所有角色(不分页)

http
GET /api/admin/roles/all
Authorization: Bearer {token}

响应示例

json
{
    "code": 200,
    "message": "success",
    "data": [
        {"id": 1, "name": "super_admin"},
        {"id": 2, "name": "editor"}
    ]
}

基于 MIT 许可发布