“成绩云接口开发文档”的版本间的差异
来自成绩云帮助中心
(→单点登录) |
(→单点登录) |
||
第10行: | 第10行: | ||
== 单点登录 == | == 单点登录 == | ||
− | 单点登录流程说明:<br/> | + | [[文件:login.png]] <br/><br/><br/> |
+ | ;单点登录流程说明:<br/> | ||
1. 第三方平台内添加成绩云访问单点登录链接,点击链接访问成绩云。<br/> | 1. 第三方平台内添加成绩云访问单点登录链接,点击链接访问成绩云。<br/> | ||
2. 成绩云接收来自第三方的的访问参数,查询站点信息。(成绩云是分学段建立站点的;如果一个学校包含了小学、初中、高中,那么成绩云中将分别建立小学、初中、高中三个站点。成绩云分学段建立的站点将使用第三方平台给定的学校唯一标识建立站点关联关系)。<br/> | 2. 成绩云接收来自第三方的的访问参数,查询站点信息。(成绩云是分学段建立站点的;如果一个学校包含了小学、初中、高中,那么成绩云中将分别建立小学、初中、高中三个站点。成绩云分学段建立的站点将使用第三方平台给定的学校唯一标识建立站点关联关系)。<br/> | ||
3. 第三方平台给定的学校没有包含多个学段,则开始验证用户信息。<br/> | 3. 第三方平台给定的学校没有包含多个学段,则开始验证用户信息。<br/> | ||
− | 4. 第三方平台给定的学校包含多个学段,成绩云将会显示选择站点页面。选择站点页面将列举出访问用户可选择的站点。用户选择对应的站点后,则开始验证用户信息。<br/> | + | 4. 第三方平台给定的学校包含多个学段,成绩云将会显示选择站点页面。选择站点页面将列举出访问用户可选择的站点。用户选择对应的站点后,则开始验证用户信息。<br/><br/> |
− | 单点登录链接:< | + | 单点登录链接: |
− | https://chengjiyun.com/portal/XXX?schoo_id=xxx&uid=xxx&type=xxx$sign=87d557e67ea74257665cff4bc42d1b50 | + | <pre>https://chengjiyun.com/portal/XXX?schoo_id=xxx&uid=xxx&type=xxx$sign=87d557e67ea74257665cff4bc42d1b50</pre> |
+ | <code>XXX</code>:实际使用时将会使用成绩云提供的平台ID代替<br/> | ||
+ | 请求方法:<code>GET</code><br/> | ||
+ | 接口方向:<code>第三方</code>→<code>成绩云</code><br/> | ||
+ | 访问参数: | ||
− | + | {| class="wikitable" | |
+ | |+访问参数 | ||
+ | |- | ||
+ | | style="width:40px; text-align:center;" | 参数 | ||
+ | | style="width:100px; text-align:center;" | 类型 | ||
+ | | style="width:100px; text-align:center;" | 名称 | ||
+ | | style="width:100px; text-align:center;" | 必填 | ||
+ | | style="width:120px; text-align:center;" | 描述 | ||
+ | |- | ||
+ | |school_id | ||
+ | |string | ||
+ | |平台ID | ||
+ | |是 | ||
+ | |描述 | ||
+ | |- | ||
+ | |account | ||
+ | |string | ||
+ | |账号 | ||
+ | |是 | ||
+ | |描述 | ||
+ | |- | ||
+ | |type | ||
+ | |角色 | ||
+ | |string | ||
+ | |是 | ||
+ | |描述 | ||
+ | |- | ||
+ | |sign | ||
+ | |加密串 | ||
+ | |string | ||
+ | |是 | ||
+ | |使用sign方法加密 | ||
+ | |- | ||
+ | |timestamp | ||
+ | |时间戳 | ||
+ | |int | ||
+ | |是 | ||
+ | |描述 | ||
+ | |} | ||
− | + | ;PHP签名算法如下:<br/> | |
− | + | <pre> | |
− | } | + | //$key 加密串 |
+ | function sign($data, $key) { | ||
+ | ksort($data); // 正向排序 | ||
+ | $key_str = urldecode(http_build_query($data)); // 连接字符串 | ||
+ | $key_str .= '&key=' . $key; // 拼接key | ||
+ | return md5($key_str); | ||
+ | } | ||
+ | |||
+ | $data = array( | ||
+ | 'school_id'=> 2345, | ||
+ | 'uid'=> 4567, | ||
+ | 'type'=> , | ||
+ | 'timestamp' => 1547019862, | ||
+ | ); | ||
+ | $sign = sign($data, $key); | ||
+ | </pre> | ||
== 查询用户 == | == 查询用户 == |
2019年1月9日 (三) 17:00的版本
目录
前言
本文档针对需要对接成绩云系统的平台而编写。
接入成绩云的平台需要先联系知未科技研发,获取2个基本参数:平台ID[platform],平台密钥[key]。这两个参数也可以反过来向知未科技提供。
然后提供一个接口URL前缀[apiBaseUrl],后面所有的接口都基于这个前缀。
为每一所接入学校向知未提供一个[orgId]。
单点登录
- 单点登录流程说明:
1. 第三方平台内添加成绩云访问单点登录链接,点击链接访问成绩云。
2. 成绩云接收来自第三方的的访问参数,查询站点信息。(成绩云是分学段建立站点的;如果一个学校包含了小学、初中、高中,那么成绩云中将分别建立小学、初中、高中三个站点。成绩云分学段建立的站点将使用第三方平台给定的学校唯一标识建立站点关联关系)。
3. 第三方平台给定的学校没有包含多个学段,则开始验证用户信息。
4. 第三方平台给定的学校包含多个学段,成绩云将会显示选择站点页面。选择站点页面将列举出访问用户可选择的站点。用户选择对应的站点后,则开始验证用户信息。
单点登录链接:
https://chengjiyun.com/portal/XXX?schoo_id=xxx&uid=xxx&type=xxx$sign=87d557e67ea74257665cff4bc42d1b50
XXX
:实际使用时将会使用成绩云提供的平台ID代替
请求方法:GET
接口方向:第三方
→成绩云
访问参数:
参数 | 类型 | 名称 | 必填 | 描述 |
school_id | string | 平台ID | 是 | 描述 |
account | string | 账号 | 是 | 描述 |
type | 角色 | string | 是 | 描述 |
sign | 加密串 | string | 是 | 使用sign方法加密 |
timestamp | 时间戳 | int | 是 | 描述 |
- PHP签名算法如下:
//$key 加密串 function sign($data, $key) { ksort($data); // 正向排序 $key_str = urldecode(http_build_query($data)); // 连接字符串 $key_str .= '&key=' . $key; // 拼接key return md5($key_str); } $data = array( 'school_id'=> 2345, 'uid'=> 4567, 'type'=> , 'timestamp' => 1547019862, ); $sign = sign($data, $key);
查询用户
查询所有用户列表
此接口是下面其它接口的超集,后面的接口通过role参数查询子集。