System Api

权限表

权限决定了一个用户是否能够执行某个操作

每个用户的权限是一个十进制数。将其转换为二进制,某位为1则代表有该位所代表的权限,否则可认为没有该权限。

权限表存储的就是二进制位中,某位为1时代表拥有的权限。

如 0x01 == 00000001

查看课程表权限 学生可以查看自己的课程表 而教务管理人员则无需查看

获取权限表

接口地址:

v1.0/system/permissions

接口描述

获取服务器中所有权限名称及权限值

请求类型

HTTP GET

请求参数

正确时返回Json:

{
    "permissions": [
        {
            "permission": "ADMINISTER",
            "value": 128
        },
        {
            "permission": "MODIFY",
            "value": 16
        },
        {
            "permission": "VIEW_ALL_SCHEDULE",
            "value": 4
        },
        {
            "permission": "VIEW_ALL_SCORE",
            "value": 8
        },
        {
            "permission": "VIEW_SCHEDULE",
            "value": 1
        },
        {
            "permission": "VIEW_SCORE",
            "value": 2
        }
    ]
}

字段解释

字段名 字段说明 字段类型 注释
permissions 权限表 list[dict] 列表节点内为权限json

权限json

字段名 字段说明 字段类型 注释
permission 权限名 str 权限的名称
value 权限值 int 二进制值中某位为1,则拥有该权限

角色表

角色是由权限体现出来的。

教师可以查看所有学生的成绩,而学生则不能任意查看别人的成绩。

认证过的教师可以修改课程的详细信息,而未认证过的教师则不能。

角色在将来可能有十几种甚至几十种,很难用角色去判断某个角色能干什么不能干什么,应该用角色代表的权限去判断。

获取角色表

接口地址:

v1.0/system/rloes

接口描述

获取所有角色名称及角色拥有的权限

请求类型

HTTP GET

请求参数

正确时返回Json:

{
    "roles": [
        {
            "name": "Administrator",
            "permissions": 255
        },
        {
            "name": "Teacher_V",
            "permissions": 15
        },
        {
            "name": "Teacher",
            "permissions": 12
        },
        {
            "name": "Student",
            "permissions": 3
        }
    ]
}

字段解释

字段名 字段说明 类型 备注
roles 角色表 list[dict] 列表中节点为角色Json

角色Json

字段名 字段说明 类型 备注
name 角色名称 str  
permissions 角色拥有的权限 int  

版本

获取最新版本

接口地址:

v1.0/system/new_version

接口描述

获取最新版本信息

请求类型

HTTP GET

请求参数

正确时返回Json:

{
    "download_android": "fake",
    "download_qr_url": "http://qr.topscan.com/api.php?text=fake&logo=http://otl5stjju.bkt.clouddn.com/logo.png",
    "version": "0.0.1",
    "whatsnew": "你好啊"
}

字段解释

字段名 字段说明 类型 备注
version 版本号 str  
whatsnew 版本信息 str  
download_android 安卓下载链接 str  
download_qr_url 下载链接二维码的链接 str