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