Skip to content

如何通过 SUST API 读取信息

v1.01

本系统采用非对称加密进行数据集成。使用 OpenSSL 生成 RSA 公钥和私钥,用于数据加密和解密。集成流程如下。

1. 获取 Read API 的公钥

在学工系统中注册。密钥由学工部信息科提供。您需要提供应用名称、应用 URL 和所需的 API 名称。测试阶段应用 URL 非必填,但上线生产环境时必须提供。

2. 获取 Read API 的应用 ID

应用注册完成后,会同时生成一个应用编号。该值用作 ClientId

3. Read API 集成端点

统一的 Read API 端点为:

  • 公网:domain/openapi/api/index
  • 内网:http://ip/xgb/index.php/openapi/api/index

请求方法:GET。

4. Read API 集成方式

请求参数:

参数必填说明
ClientId应用 ID
AuthStr权限与时间戳校验码。详见下文。

AuthStr 是一个全局认证变量,包含 API 名称和时间戳校验等信息。生成方式如下:

  • 构造字符串 ApiName&timestamp
  • 使用公钥对字符串进行加密。
  • 传输前对加密值执行 base64_encode

示例:访问学生列表,API 名称为 StudentList,假设当前时间戳为 1730189433

  1. 构造字符串:StudentList&1730189433
  2. 使用公钥加密:sadsadjsldjljflcvjlcvjlxcvjlxcvjlxcvj
  3. 执行 base64_encode 编码:fgldjflgjfdlgjdljasdhkjasdhas
  4. 访问:
text
openapi/api/index?ClientId=xxxx&AuthStr=fgldjflgjfdlgjdljasdhkjasdhas&other_parameters

服务器会验证权限以及时间戳是否过期。如果出错,将显示对应的错误信息。

5. API 端点

5.1 学生信息列表

API 名称:StudentList

扩展参数:

参数必填说明
XH学号
XM姓名
page页码。默认:第 1 页。
pagesize每页记录数。默认:1000 条。
date增量或变更数据的参考日期,例如 2024-10-29

返回参数说明:

参数说明
XM姓名
XH学号
BJMC班级名称
ZYMC专业名称
DWMC学院名称
NJ年级
MZ民族代码
ZZMM政治面貌代码
XZ学制
PYCC培养层次
XSZT学生状态。1 表示在读;其他值表示非在读。
updatetime更新时间

5.2 教师信息列表

API 名称:TeacherList

扩展参数:

参数必填说明
GH工号
XM姓名
page页码。默认:第 1 页。
pagesize每页记录数。默认:1000 条。
date增量或变更数据的参考日期,例如 2024-10-29

返回参数说明:

参数说明
XM姓名
XH学号
DWMC学院名称
TYPE1:校级管理员;2:副书记;3:辅导员
updatetime更新时间

5.3 教师权限班级查询

API 名称:Teacher2Class

扩展参数:

参数必填说明
GH工号
XM姓名
page页码。默认:第 1 页。
pagesize每页记录数。默认:1000 条。
date增量或变更数据的参考日期,例如 2024-10-29

返回参数说明:

参数说明
XM姓名
XH学号
DWMC学院名称
TYPE1:校级管理员;2:副书记;3:辅导员
CLASSLIST管理的班级列表
updatetime更新时间

5.4 消息推送

API 名称:SendMsg

扩展参数:

参数必填说明
toPersons工号或学号
Content消息内容。支持 HTML。
Url链接 URL

简单 HTML 示例:

html
Hello, please click <a href="https://www.sust.edu.cn">here</a> to visit the university website. Thank you!\r\n Thank you for supporting the work of the Information Section of the Student Affairs Department.

\r\n 为换行序列。

5.5 请假信息

API 名称:LeaveList

扩展参数:

参数必填说明
XH学号
XM姓名
page页码。默认:第 1 页。
pagesize每页记录数。默认:1000 条。
date增量或变更数据的参考日期,例如 2024-10-29

返回参数说明:

参数说明
id自增 ID
XM姓名
XH学号
QJKSSJ请假开始时间
QJJSSJ请假结束时间
QJXJSJ销假时间。如果存在,以此字段作为结束时间。
updatetime更新时间

5.6 学生在离校状态

API 名称:StudentStatus

扩展参数:

参数必填说明
XH学号
XM姓名
page页码。默认:第 1 页。
pagesize每页记录数。默认:1000 条。
date增量或变更数据的参考日期,例如 2024-10-29

返回参数说明:

参数说明
id自增 ID
XM姓名
XH学号
QJKSSJ离校开始时间,由管理员动态调整
QJJSSJ离校结束时间,由管理员动态调整
updatetime更新时间