开发者
UESTC-API 现开始尝试提供开发者 API,以期改善 API 的扩展性,吸引更多开发者使用 UESTC-API 创造更多富有吸引力的新功能。
- 开发者可以通过 API 获取到基础性的数据(如网站 cookies 等),不再局限于 UESTC-API 设计的账户系统
- 开发者无需为登录、单点登录验证、联合统一认证等编写大量的代码,省出时间专注于业务代码的编写
- 由于学校登录系统变动频繁,仅凭个人无力维持 API 的高可用性。如果您对此项目有兴趣,欢迎参与维护
🎉 通过开发者 API,您可以编写插件式的功能代码。如果您使用 UESTC-API 创作了任何新的功能或接口,Please let us know
特别声明:UESTC-API 开发者不应当使用此功能收集用户的任何隐私信息
开发者使用此扩展功能编写软件引发的任何纠纷或法律问题,与本项目和本项目的维护者无关
通过学号/录取通知书号、密码登录,返回用户的教务系统 Cookies
您可以使用此 Cookies 请求 eams.uestc.edu.cn 域下的任何页面
POST /api/dev/idas
参数 | 类型 | 必需 | 描述 | 示例 |
---|---|---|---|---|
Content-Type |
string | 是 | application/json |
application/json |
Accept |
string | 是 | application/json |
application/json |
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
username |
string | 是 | 学号/录取通知书号 |
password |
string | 是 | 密码,不少于 6 个字符 |
{
"username": "YOUR_STUDENT_NO",
"password": "YOUR_PASSWORD"
}
status: 200 OK
{
"code": 201,
"data": {
"semester.id": "183",
"route": "c646ae0d08c9ace4c3keae3b5b7928b7",
"JSESSIONID": "FEAB5DC208DE3A5CFD882D84D6I8F734; Path=/eams/; HttpOnly",
"CASTGC": "TGT-113623-Z7Pt3zqdw6YsMG2OeptQGSBcnImBXIwIaULQoCaV3ia5u0Z5Qs1551555663574-zpfH-cas;Path=/authserver/;HttpOnly;Max-Age=604800;Expires=Sat,9 Mar 2019 19:41:00 GMT;",
"CASPRIVACY": "; expires=Thu, 01-Jan-1970 01:00:00 GMT; path=/authserver/",
"iPlanetDirectoryPro": "Tcit4V0X9tqJVYxMYaZliU; domain=.uestc.edu.cn; path=/",
"sto-id-20480": "JSKEMANOUCBP; Expires=Tue, 27-Feb-2029 19:41:43 GMT; Path=/"
},
"time": "2019-03-02T19:42:23Z",
"msg": "Post Success"
}
以上数据经过脱敏处理,您无法使用上述 cookies 直接请求教务系统,请使用自己的账户信息进行测试
-
教务系统没有提供明确的 cookies 过期时间,目前过期机制尚不清楚,建议您在代码逻辑中处理 cookies 更新机制
-
默认返回模拟登录过程中获取的所有 cookies,因此上述 cookies 仅为示例,随着教务系统的频繁更新,数据可能会发生变化
-
教务系统的特殊机制:目前发现在访问某些网页时,如果带上所有 cookies,教务系统可能返回错误,并且这个机制会频繁变化。开发者需要通过 Chrome devtools 或 Charles 等网络工具自行分析,或 New issue 讨论
通过学号/录取通知书号、密码登录,返回用户的一卡通网站 Cookies
您可以使用此 Cookies 请求 ecard.uestc.edu.cn 域下的任何页面
POST /api/dev/ecard
参数 | 类型 | 必需 | 描述 | 示例 |
---|---|---|---|---|
Content-Type |
string | 是 | application/json |
application/json |
Accept |
string | 是 | application/json |
application/json |
参数 | 类型 | 必需 | 描述 |
---|---|---|---|
username |
string | 是 | 学号/录取通知书号 |
password |
string | 是 | 密码,不少于 6 个字符 |
{
"username": "YOUR_STUDENT_NO",
"password": "YOUR_PASSWORD"
}
status: 200 OK
{
"code": 201,
"data": {
"JSESSIONID": "78C3DF62025265DC5D2DAB041F02E7D5; Path=/; HttpOnly",
"COOKIE_SUPPORT": "true; Expires=Wed, 14-Oct-2065 22:35:38 GMT; Path=/; HttpOnly",
"iPlanetDirectoryPro": "7j2pa5g7bJxPfc2O7wKQjR; domain=.uestc.edu.cn; path=/"
},
"time": "2019-03-02T19:42:23Z",
"msg": "Post Success"
}
以上数据经过脱敏处理,您无法使用上述 cookies 直接请求一卡通网站,请使用自己的账户信息进行测试
-
一卡通网站的 Cookies 过期时间待详细测试,目前不清楚
-
一卡通网站页面返回经测试发现不够稳定,请开发者做好此 API 的错误处理
参考 电费 进行请求
宿舍电费信息接口无需鉴权,默认返回后方接口返回的所有数据
参考 校历 进行请求
UESTC-API 已经取消提供公共 API 服务器,开发者需要将应用部署到自己的服务器上
https://uestc.ml 现在仅提供 11 个 Extra API 的转发服务,且不保证此服务的可用性
我们提供了方便的 Docker 化部署方案,在方便开发者实现后端数据管控的同时帮助我们应对日益严峻的教务系统 IP 封禁策略,感谢配合