身份核验
入校审批
描述
通过学工号查询某个用户的入校审批状态
支持的模式
- authorization_code
- client_credentials
- password
请求方法
GET
请求地址
https://api.ecnu.edu.cn/api/v1/epidemic/access
请求参数
参数名 | 是否必填 | 备注 |
---|---|---|
userId | 是 | 学工号 |
device | 否 | 设备ID或设备名称,如用于门禁场景,则建议要包含 进/出 区分标记,例如 东川路大门手持机1-进 |
返回参数
data
参数名 | 类型 | 备注 |
---|---|---|
userId | string | 学工号 |
idCardNo | string | 身份证号,固定空值 |
name | string | 姓名 |
access | bool | 是否允许入校 |
type | string | 人员类型,备案人员/非备案人员/隔离人员/退休人员/领导 |
endTime | long | 入校截止时间,时间戳(毫秒),无截至时间则为0 |
desc | string | 具体的说明文字 |
action | string | 响应动作级别,permit/warning/deny,其中 permit 和 warning 都可入校,其 access=true, deny 不可入校,其 access=false。请根据对应级别给予提示文字对应的颜色,例如 permit 对应绿色,warning 对应黄色,deny 对应红色。如涉及硬件终端,则建议应该给对应区分的语音播报 |
actionStatus | int | 响应动作的分类代码,对应不同的 desc 说明和 action 行为。说明文字和 action 行为都可能会变化,务必动态处理逻辑,不要根据分类代码做固化逻辑。 |
请求示例
curl -v -H "Authorization: Bearer 2c29fb27cfbb3bb88563200ac9c6fa2c" "https://api.ecnu.edu.cn/api/v1/epidemic/access?userId=20***73&device=xxxxxxxxxxxxxx"
返回示例
可以入校 ,开闸
json
{
"errCode": 0,
"errMsg": "success",
"requestId": "3808c622-2f69-4001-bd03-cc5b36c0e51b",
"data": {
"userId": "20****73",
"idCardNo":"",
"name": "冯*",
"type": "备案人员",
"endTime": 0,
"desc": "入校",
"access": true,
"action":"permit",
"actionStatus":0
}
}
访客入校审批
描述
通过身份证号码查询某个访客用户的入校审批状态
支持的模式
- client_credentials
请求方法
GET
请求地址
https://api.ecnu.edu.cn/api/v1/epidemic/guestaccess
请求参数
参数名 | 是否必填 | 备注 |
---|---|---|
userId | 是 | 身份证号 |
device | 否 | 设备ID或设备名称,如用于刷卡验证场景,则建议要包含 进/出 区分标记,例如 东川路大门手持机1-进 |
返回参数
data
参数名 | 类型 | 备注 |
---|---|---|
userId | string | 工号,固定空值 |
idCardNo | string | 身份证号 |
name | string | 姓名 |
access | bool | 是否允许入校 |
type | string | 人员类型,备案人员/非备案人员/隔离人员/退休人员/领导 |
endTime | long | 入校截止时间,时间戳(毫秒),无截至时间则为0 |
desc | string | 具体的说明文字 |
action | string | 响应动作级别,permit/warning/deny,其中 permit 和 warning 都可入校,其 access=true, deny 不可入校,其 access=false。请根据对应级别给予提示文字对应的颜色,例如 permit 对应绿色,warning 对应黄色,deny 对应红色。如涉及硬件终端,则建议应该给对应区分的语音播报 |
actionStatus | int | 响应动作的分类代码,对应不同的 desc 说明和 action 行为。说明文字和 action 行为都可能会变化,务必动态处理逻辑,不要根据分类代码做固化逻辑。 |
请求示例
curl -v -H "Authorization: Bearer 2c29fb27cfbb3bb88563200ac9c6fa2c" https://api.ecnu.edu.cn/api/v1/epidemic/guestaccess?userId=310104****1122
返回示例
可以入校 ,开闸
json
{
"errCode": 0,
"errMsg": "success",
"requestId": "3808c622-2f69-4001-bd03-cc5b36c0e51b",
"data": {
"userId": "",
"idCardNo":"310******2222",
"name": "冯*",
"type": "备案人员",
"endTime": 0,
"desc": "入校",
"access": true,
"action":"permit",
"actionStatus":0
}
}
姓名身份证号校验
描述
根据提供的身份证号和姓名,校验身份证号与姓名是否匹配
支持的模式
- client_credentials
请求方法
POST
请求地址
https://api.ecnu.edu.cn/api/v1/heds/checkid
请求参数
参数名 | 是否必填 | 备注 |
---|---|---|
idCard | 是 | 身份证号码 |
name | 是 | 姓名 |
返回参数
data
参数名 | 类型 | 备注 |
---|---|---|
idCard | string | 身份证号码 |
name | string | 姓名 |
checkResullt | string | 公民身份号码匹配度代码,对应值见附表 |
idCardStatus | string | 身份状态码,对应值见附表 |
checkResullt码值表
代码 | 描述 |
---|---|
1 | 一致 |
2 | 完全匹配 |
3 | 相似匹配 |
4 | 未匹配 |
idCardStatus码值表
代码 | 描述 |
---|---|
0 | 有效人口 |
1 | 死亡 |
2 | 失踪 |
3 | 迁/流出 |
4 | 服兵役 |
5 | 出国境定居 |
6 | 消除重复人口 |
7 | 转为本地户籍人口 |
8 | 冻结户口 |
9 | 其他注销 |
A | 军人转业旧证注销 |
B | 军人证重复注销 |
C | 军人其它注销 |
a | 证号变更旧证注销 |
b | 挖库注销 |
请求示例
curl -v -X POST -H "content-type:application/json" -H "Authorization: Bearer 2c29fb27cfbb3bb88563200ac9c6fa2c" -d "{\"idCard\":\"3401****0011\", \"name\":\"王**\"}" "https://api.ecnu.edu.cn/api/v1/heds/checkid"
返回示例
姓名身份证号匹配
json
{
"errCode": 0,
"errMsg": "success",
"requestId": "3808c622-2f69-4001-bd03-cc5b36c0e51b",
"data": {
"idCard": "3401*******0011",
"name": "王*",
"checkResult":"1",
"idCardStatus": "0"
}
}
验证码校验
描述
与前端验证码方案结合,校验验证码是否正确,可实现用户无感的验证码校验。
验证码机制详见:行为式验证码
申请此接口后请单独联系我们获取前端 captcha 和 jssdk。
支持的模式
- client_credentials
请求方法
POST
请求地址
https://api.ecnu.edu.cn/api/v1/security/captcha
请求参数
参数名 | 是否必填 | 备注 |
---|---|---|
NECaptchaValidate | 是 | 前端生成的验证码字符串 |
返回参数
无
请求示例
bash
curl -v -X POST -H "content-type:application/json" -H "Authorization: Bearer 2c29fb27cfbb3bb88563200ac9c6fa2c" -d "{\"NECaptchaValidate\":\"xxxxx\"}" "https://api.ecnu.edu.cn/api/v1/security/captcha"
返回示例
json
{
"errCode": 0,
"errMsg": "success",
"requestId": "3808c622-2f69-4001-bd03-cc5b36c0e51b",
"data": null
}