企业🤖AI Agent构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
### 1.api接口说明 * 考试星api接口采用jwt规范。Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519)。[JWT调用示例代码](https://www.kancloud.cn/exam-star/ksxhelp_1/1797394) ### 2.api参数配置 * appId : 客户唯一标识符,由考试星提供,例如:14343。 * appKey : 用于加密jwt,由考试星提供,例如:xf5ha3h67h4Ger34wh35p345h4。 获取方式:【管理员后台:系统设置->更多设置->开发者信息管理】 ### 3.api统一接口地址 * 地址: https://api.kaoshixing.com/api/company/data/:appId/?jwt=:jwtInfo * **jwtInfo:**jwt_info是用户根据jwt规范,用app_key将过期时间、action_id加密,生成的加密字符串 ### 4.生成加密jwtInfo(java示例) (1).安装依赖 ``` <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt</artifactId> <version>0.7.0</version> ``` </dependency> (2).生成加密字符串 生成jwtInfo加密字符串 ``` import io.jsonwebtoken.Jwts; String appKey = “xf5ha3h67h4Ger34wh35p345h4” String jwtInfo = Jwts.builder() .claim("exp", System. currentTimeMillis() + 1000*10) .claim("action_id", "201") .signWith(SignatureAlgorithm.HS256,app_key.getBytes("UTF-8")).compact(); ``` (3).加密参数解释 ``` appKey:加密的私钥,由考试星提供。 exp:过期时间。 action_id:表示请求的数据类型(注意是下划线)。 ``` ### 5.action_id参数解释 不同的action_id代表不同的请求行为,目前开放的请求行为如下: | 请求行为编码 | 请求行为解释 | |:----:|:----:| | 601 | 考试信息列表 | | 602 | 考生分数列表 | | 603 | 试卷试题列表 | | 604 | 考生答案列表 | | 605 | 在线学习内容表 | | 606 | 在线学习时长 | | 702 | 获取考试和考试结果整合信息 | ### 6.当前开放的请求接口 (1)考试信息列表接口: 请求地址:https://api.kaoshixing.com/api/company/data/:appId/?jwt=:jwtInfo 请求方法:post 请求参数: | 参数编号 | 参数名称 | 参数值示例 | 参数描述 | |:----|:----|:----|:----| | 1 | page | 3 | 页码,每页10个 | | | | | | 返回结果: | 参数名称 | 参数描述 | 类型 | 备注 | |:----|:----|:----:|:----|:----| | examInfoId | 考试ID | String,下同 | | | examName | 考试名称 | | | | examTotalScore | 考试总分 | | | | passMark | 及格分 | | | | examTime | 答题时长 | | | | examStartTime | 考试开始时间 | | | | examEndTime | 考试结束时间 | | | | examineeNums | 应考人数 | | | | maxScore | 最高分 | | | | avgScore | 平均分 | | | | minScore | 最低分 | | | | testNums | 试题数 | | | | userExamedCount | 已考人数 | | | | userCommitCount | 已交卷人数 | | | (2)考生分数列表接口: 请求地址:https://api.kaoshixing.com/api/company/data/:appId/?jwt=:jwtInfo 请求方法:post 请求参数: | 参数编号 | 参数名称 | 参数值示例 | 参数描述 | |:----|:----|:----|:----| | 1 | examInfoId | 119551 | 考试id | | 2 | page | 3 | 页码,每页500个 | | | | | | 返回结果: | 参数名称 | 参数描述 | 类型 | 备注 | |:----|:----|:----|:----|:----|:----| | userId | 考生ID | String,下同 | 员工号 | | uesrName | 考生姓名 | | | | depName | 部门 | | | | position | 职位 | | | | ansTime | 答题时长 | | | | startTime | 开始时间 | | | | commitTime | 交卷时间 | | | | score | 成绩 | | | | rank | 排名 | | | | isPass | 是否通过考试 | | | | result | 考试情况 | String,取值枚举:</br>及格</br>不及格</br>漏考| | | isForce | 是否强制交卷 |int,取值枚举:</br> 0--否 </br>2--是(切屏防作弊 )</br>3--是(x秒无操作自动交卷 )</br>4--是(闯关失败 )</br>6--是(管理员强制交卷</br>7--是(人脸识别失败次数超限)</br>- 未参与学员 | 可以用该字段判断学员是否违规| | note | 备注 | | | | field1 | 自定义字段1 | | | | field2 | 自定义字段2 | | | | field3 | 自定义字段3 || | | field4 | 自定义字段4 | | | | field5 | 自定义字段5 | | | (3)试卷试题列表接口: 请求地址:https://api.kaoshixing.com/api/company/data/:appId/?jwt=:jwtInfo 请求方法:post 请求参数: | 参数编号 | 参数名称 | 参数值示例 | 参数描述 | |:----|:----|:----|:----| | 1 | examInfoId | 119551 | 考试id | 返回结果: | 参数名称 | 参数描述 | 类型 | 备注 | |:----|:----|:----:|:----|:----:|:----| | testId | 试题ID | String,下同 | | | testName | 试题大题 | | | | testType | 试题类型 | | | | testContent | 试题内容及答案 | | | (4)考生答案列表接口: 请求地址:https://api.kaoshixing.com/api/company/data/:appId/?jwt=:jwtInfo 请求方法:post 请求参数: | 参数编号 | 参数名称 | 参数值示例 | 参数描述 | |:----|:----|:----|:----| | 1 | examInfoId | 119551 | 考试id | 返回结果: | 参数名称 | 参数描述 | 类型 | 备注 | |:----|:----|:----:|:----|:----:|:----| | userId | 考生ID | String | | | ansAndScore | 考试答案和得分 | JsonString | | (5)在线学习内容列表接口: 请求地址:https://api.kaoshixing.com/api/company/data/:appId/?jwt=:jwtInfo 请求方法:post 请求参数: | 参数编号 | 参数名称 | 参数值示例 | 参数描述 | |:----|:----:|:----|:----:|:----|:----:|:----| | 1 | page | 3 | 页码,每页20个 | 返回结果: | 参数名称 | 参数描述 | 类型 | 备注 | |:----|:----:|:----|:----:|:----|:----:|:----| | courseId | 课程ID | String | | | courseName | 课程名称 | String | | (6)在线学些时长列表接口: 请求地址:https://api.kaoshixing.com/api/company/data/:appId/?jwt=:jwtInfo 请求方法:post 请求参数: | 参数编号 | 参数名称 | 参数值示例 | 参数描述 | |:----|:----:|:----|:----|:----:|:----|:----:| | 1 | courseId | 12345 | 课程id | | 2 | page | 3 | 页码,每页500个 | 返回结果: | 参数名称 | 参数描述 | 类型 | 备注 | |:----|:----:|:----|:----:|:----|:----:|:----| | userId | 用户ID | String | | | studyTime | 学习时长 | String | | (7)获取考生可见考试和考试结果整合列表 请求地址:https://api.kaoshixing.com/api/company/data/:appId/?jwt=:jwtInfo 请求方法:post 请求参数: | 参数编号 | 参数名称 | 参数值示例 | 参数描述 | |:----|:----:|:----|:----|:----:|:----|:----:| | 1 | user\_id | 123456 | 用户id | | 2 | page | 3 | 页码,每页500个 | 返回结果: | 参数名称 | 参数描述 | 类型 | 备注 | |:----|:----:|:----|:----:| | examInfoId | 考试id | int | | | examStyleName | 考试类型 | String | | | examName | 考试名称 | String | | | examStartTime | 考试开始时间 | String | | | examEndTime | 考试结束时间 | String | | | examTimeRestrict | 是否限制每题时长 | String | | | examTime | 考试时长(分钟) | int | | | examResultsId | 考试结果id | int | | | results | 分数 | double | | | isPass | 是否通过 | int | | | examLink | 考试链接 | String | | | inquireLink | 查询结果链接 | String | | | practiceMode | 是否联系模式 | int | | | status | 考试状态 | String | |