第三方调用开放平台服务用户指南

第三方调用开放平台服务用户指南

作者:王张章 ; 邮箱:zzwang@iflytek.com

第三方请求接口服务说明

  1. 请求平台URL说明

    • 测试环境:http://test.zhixue.com/openapi/service/${serviceName}
    • 现网环境:http://www.zhixue.com/openapi/service/${serviceName}

      其中serviceName为配置在平台上的可用服务,具体可用服务见服务列表。如有可用服务为:getSchoolByClassId,则请求平台的url为:http://test.zhixue.com/openapi/service/getSchoolByClassId

  2. 请求平台方式和Content-Type类型说明

    • 平台支持HTTP POST和GET方式
    • 平台支持Content-Type类型包括application/x-www-form-urlencoded和application/json

      对于application/x-www-form-urlencoded类型GET和POST方式都可以请求平台
      对于application/json类型,只接收POST请求,请求的内容要在HTTP BODY中,平台只会解析body体中的数据

  3. 请求参数说明

    • 平台所需通用参数放在HTTP HEAD中,必传参数说明如下:
      1. appKey:向开放平台申请的唯一标识
      2. secrete:请求密钥(MD5加密),为appCode+appKey+发起请求时的时间戳(毫秒)

        每次生成的密钥只被允许访问一次(测试环境为方便测试可能关闭)
        每次生成的密钥在半小时以内有效

      3. timeStamp:请求时的时间戳,和secrete中加密的时间戳保持一致
    • 接口业务参数根据HTTP请求方式和Content-Type放入queryString或者HTTP BODY中
      加密方式示例:
      StringBuffer sb = new StringBuffer();
      Long timeStamp=System.currentTimeMillis();
      sb.append(appCode).append(appKey).append(timeStamp);
      String secrete=ToolsUtil.getMD5(sb.toString(), “utf-8”);

消息格式和消息码定义

  • 开放平台提供统一的数据返回格式,通信格式为JSON,接口服务(见服务列表)返回的数据会放在data字段中,具体data数据体格式见服务列表中服务详细描述。定义如下:
    public class OpenResp {

      /**
       * 响应消息码
       */
      private String code;
    
      /**
       * 响应消息描述
       */
      private String message;
    
      /**
       * 响应数据,主要为业务服务接口返回的json字符串类型的数据
       */
      private String data;
    

    }

消息码和消息描述定义:
SUCCESS(“0”,“成功”),
UNKNOWN_ERROR("-1",“系统错误”),
LACK_PLATFORM_PARAM(“10001”,“缺少平台必须参数或参数值为空”),
INVALID_PARAM(“10002”,“非法参数”),
URL_EXPIRED(“10003”,“链接超过半小时,请求失效”),
INVALID_APPKEY(“10004”,“无效的APPKEY”),
INVALID_SIGNATURE(“10005”,“无效的签名”),
URL_REUSED(“10006”,“同一url不能被重复使用,每次调用需要更新签名”),
PARSE_PARAM_ERROR(“10007”,“解析请求参数错误”),
SERVICE_NOT_EXISTS(“20001”,“请求服务不存在”),
SERVICE_CLOSED(“20002”,“请求服务不可用”),
NOT_ACCESS_SERVICE_AUTH(“20003”,“没有服务访问权限”),
NOT_AREA_ACCESS_AUTH(“20004”,“没有区域访问权限”),
CALLED_THIRD_URL_ERROR(“30001”,“调用业务接口出错”),
CALLED_THIRD_URL_NOT_FIND(“30002”,“业务接口地址不存在或错误”),
CALLED_THIRD_URL_TIMEOUT(“30003”,“业务接口调用超时”),
LACK_THIRD_URL_PARAM(“30004”,“缺少第三方业务接口必要参数”);

开放平台可用服务列表和详细描述

如无特殊说明,请求的Content-Type默认为application/x-www-form-urlencoded;返回的数据格式为JSON字符串


用户中心服务
  • userService-getStudent

  • userService-getUserByUserId

  • userService-getTeachersInClazz

  • userService-getStudents

  • userService-getUserByLoginName

  • userService-getTeachings

  • schoolService-getSchool

  • schoolService-getSchoolByUserId

  • clazzService-getClazzsByRole

  • clazzService-getBindClasses

  • subjectBaseService-getTeachSubjectsByExam

    • 服务详细描述:通过考试科目获取教学科目
    • HTTP请求方式:GET
    • 请求参数说明:

      必传参数说明:

      • code:考试科目
      • phase:学段

      可选参数说明:

    • 返回结果格式和字段说明

    {
    “code”: “0”,
    “message”: “成功”,
    “data”: “[
    {
    “code”: “05”,
    “name”: “物理”,
    “sort”: 140,
    “isMultiSubject”: false,
    “parentCode”: null,
    “isAddOrRemove”: true,
    “type”: null,
    “hasPrimary”: false,
    “hasJuniorMiddle”: true,
    “hasSeniorHigh”: true,
    “hasBasic”: true,
    “hasTeach”: true,
    “hasExam”: true,
    “hasCustom”: false,
    “customType”: null,
    “orgId”: “1”,
    “orgType”: “country”,
    “hasNewGaoKao”: true,
    “ident”: “required”
    }
    ]”
    }

  • userService-getStudent

    • 服务详细描述:根据学生id获取学生详细信息,不包含学生选课信息
    • HTTP请求方式:GET
    • 请求参数说明:

      必传参数说明:

      • studentId:学生ID

      可选参数说明:

    • 返回结果格式和字段说明

    胡神主未提供

  • userService-getUsersByUserCodes

    • 服务详细描述:批量根据学生学号获取学生的基本信息
    • HTTP请求方式:GET
    • 请求参数说明:

      必传参数说明:

      • userCodes:学号

      可选参数说明:

    • 返回结果格式和字段说明

    胡神主未提供

  • userService-getHeadTeacher

    • 服务详细描述:获取某个班级的班主任
    • HTTP请求方式:GET
    • 请求参数说明:

      必传参数说明:

      • clazzId:班级ID

      可选参数说明:

    • 返回结果格式和字段说明

    胡神主未提供

  • userService-getTeachersInClazz

    • 服务详细描述:获取某个班级教授某门学科的老师
    • HTTP请求方式:GET
    • 请求参数说明:

      必传参数说明:

      • classId:班级ID
      • subjectCode:学科code

      可选参数说明:

    • 返回结果格式和字段说明

    胡神主未提供


评价档案阅卷服务
  • getClassExamArchiveByExam

    • 服务详细描述:获取该学校某考试全部班级全学科统计数据
    • HTTP请求方式:GET
    • 请求参数说明:

      必传参数说明:

      • examId:考试ID(消息推送含此参数,以下相同)
      • schoolId:学校ID(消息推送含此参数,以下相同)

      可选参数说明:

    • 返回结果格式和字段说明

    [
    {
    “id”: “c0cf9499-5df4-4250-ae48-ab1105bb2d28”,
    “examId”: “b11fc8e5-2fc0-457f-b5b9-987d14f90e0f”,
    “examName”: “单人第一次月考数据”,
    “examCreateDateTime”: 1414053025000,//考试创建时间
    “createDateTime”: 1414054834350,//记录创建时间
    “gradeCode”: “09”, //年级ID
    “schoolId”: “2244000001000002392”,
    “subjectCode”: “03”,//学科ID
    “subjectCodes”: [ //学科ID列表
    “03”
    ],
    “version”: 1001,//版本号
    “isFinal”: null,//是否全科结束
    “markingExamTypeName”: null,//考试类型
    “markingExamTypeCode”: null, //考试类型编码
    “examDateTime”: null,//考试时间
    “reportVersion”: “1001”,//版本号
    “className”: “九年级45班”,
    “classId”: “2034000020000000727”,
    “classOrder”: null, //班级排序
    “studentCount”: null,//学生数目
    “submitStudentCount”: 1, //提交人数
    “unSubmitStudentCount”: 6, //未提交人数
    “tiStudentCount”: 0, //剔除学生数目
    “avgScore”: 116.0,//平均分
    “maxScore”: 116.0,//最高分
    “minScore”: 116.0,//最低分
    “scoreSections”: [
    {
    “minScore”: 0.0, //分段起始分数
    “maxScore”: 15.0, //分段结束分数
    “count”: 0, //分段人数
    “rate”: 0.0 //分段人数赞比
    }
    ],
    “standardDeviation”: 0.0,//标准差
    “tiArchive”: { //剔除学生之前班级统计信息
    tiScore:null 总分
    tiClassRank:null 班级排名;
    tiSchoolRank:null 校级排名
    tiGradeRank:null 年级排名
    tiAvgScore:null 平均分
    tiMaxScore:null 最高分
    tiMinScore:null 最高分
    tiExcellentRate:null 优秀率
    tiExcellentCount:null 优秀人数
    tiGreatRate:null 良好率
    tiGreatCount:null 良好人数
    tiQualifiedRate:null 合格率
    tiQualifiedCount:null 合格人数
    tiDisQualifiedRate:null 不合格率
    tiDisQualifiedCount:null 不合格人数
    tiPassCount:null 及格人数
    tiPassRate:null 及格率
    tiStudentCount:null 被剔除的学生数
    tiScoreSections:null 被剔除的学生数
    tiUserSubjectScores:null 学生单学科分数、
    schoolDeptRan:null 文理考生排名
    schoolElectiveRank:null 选考组合排名
    tiCustomClassRank:null 自定义班级排名
    tiCustomSchoolRank:null 定义校级排名

    }
    “statStudentCount”: null //统计学生数

  • getSchoolClassArchiveMonList

    • 服务详细描述:获取该学校某考试全部班级单科统计数据
    • HTTP请求方式:GET
    • 请求参数说明:

      必传参数说明:

      • examId:考试ID
      • schoolId:学校ID

      可选参数说明:

    • 返回结果格式和字段说明

    [
    {
    “id”: “412a7846-0689-493b-bbf5-8000ade6b382”,
    “subjectCode”: “03”, //学科ID
    “subSubjectCodes”: null, //子学科
    “gradeCode”: “09”,年级ID
    “schoolId”: “2244000001000002392”, 学校ID
    “topicSetId”: “4782b05c-4a56-4c07-828e-683b3e09de4c”, 试卷ID
    “topicSetName”: “单人第一次月考数据(英语)”, 试卷名称
    “standardScore”: 150.0, //试卷满分
    “createPaperTime”: 1414053026000, //试卷创建时间
    “createTime”: 1414054833905, //记录创建时间
    “updateTime”: 1414054833905, //更新时间
    “examId”: “b11fc8e5-2fc0-457f-b5b9-987d14f90e0f”, //
    “examName”: “单人第一次月考数据”,
    “markingExamTypeName”: null,//考试类型
    “markingExamTypeCode”: null, //考试类型编码
    “examCreateDateTime”: null, //考试创建时间
    “examDateTime”: null, //考试时间
    “classId”: “2034000020000000727”,
    “className”: “九年级45班”,
    “classOrder”: 209045,
    “classTeacherName”: “方新宇”,
    “avgScore”: 116.0, //平均分
    “maxScore”: 116.0, //最高分
    “minScore”: 116.0, //最低分
    “excellentCount”: 0, //优秀学生数目
    “wellCount”: 1,//良好学生数目
    “qualifiedCount”: 0, //合格学生数目
    “disQualifiedCount”: 0,//不合格学生数目
    “passCount”: 1,//及格人数
    “excellentRate”: 0.0,//优秀学生占比
    “passRate”: 1.0, //及格人数
    “qualifiedRate”: 0.0,//合格学生占比
    “wellRate”: 1.0,//良好学生占比
    “disQualifiedRate”: 0.0,//不合格学生占比
    “scoreSections”: [ //班级分段统计
    {
    “minScore”: 0.0, //分段起始分数
    “maxScore”: 15.0, //分段结束分数
    “count”: 0, //分段人数
    “rate”: 0.0 //分段人数赞比
    }
    ],
    “standardDeviation”: 0.0, 班级学生标准差
    “studentCount”: 7, //班级学生数
    “submitStudentCount”: 1, //提交人数
    “unSubmitStudentCount”: 6, //未提交人数
    “tiStudentCount”: 0, //剔除学生数目
    “archiveStepScore”: null, //档案分步分数
    “tiArchive”: {
    tiScore:null 总分
    tiClassRank:null 班级排名;
    tiSchoolRank:null 校级排名
    tiGradeRank:null 年级排名
    tiAvgScore:null 平均分
    tiMaxScore:null 最高分
    tiMinScore:null 最高分
    tiExcellentRate:null 优秀率
    tiExcellentCount:null 优秀人数
    tiGreatRate:null 良好率
    tiGreatCount:null 良好人数
    tiQualifiedRate:null 合格率
    tiQualifiedCount:null 合格人数
    tiDisQualifiedRate:null 不合格率
    tiDisQualifiedCount:null 不合格人数
    tiPassCount:null 及格人数
    tiPassRate:null 及格率
    tiStudentCount:null 被剔除的学生数
    tiScoreSections:null 被剔除的学生数
    tiUserSubjectScores:null 学生单学科分数、
    schoolDeptRan:null 文理考生排名
    schoolElectiveRank:null 选考组合排名
    tiCustomClassRank:null 自定义班级排名
    tiCustomSchoolRank:null 定义校级排名

    }

      "isAdmin": true, //是否行政班
      "isTeach": false, //是否教学班
      "levelDistributions": null, 等级分布占比情况
      "statStudentCount": 1, //统计学生数目
      "zscore": 3.0 //z分数
    }
    

    ]

  • getAllUserExamArchiveByExamClass

    • 服务详细描述:获取该学校某考试全部学生全科统计数据
    • HTTP请求方式:GET
    • 请求参数说明:

      必传参数说明:

      • examId:考试ID
      • schoolId:学校ID
      • classId:班级ID(通过接口getSchoolClassArchiveMonList获取)

      可选参数说明:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值