- /teacher/login/
- /teacher/question/
- /teacher/question/list/
- /teacher/test_paper/
- /teacher/test_paper/list/
- /teacher/test/
- /teacher/test/list/
- /teacher/record/
- /teacher/student/
- /teacher/student/list/
- 传入数据格式
{
"id": <teacher ID>,
"password": <password>,
}
- 返回数据格式
{
"status": 200
}
- 传入数据格式
<question_id(题目ID)>
- 返回数据格式
{
"stem": <题干>,
"selections": [
<选项内容 string>
],
"answer": <integer range from 1 to 4 or more>
}
- 传入数据格式
{
"stem": <题干>,
"selections": [<string 选项内容>],
"answer": <integer range from 1 to 4>
}
- 返回数据格式
{
"question_id": <题目ID>
}
- 传入数据格式
{
"question_id": <题目ID>
}
- 返回数据格式
{
"status": 200
}
PS: 存在的项覆盖,不存在的项不变,id不可缺
- 传入数据格式
{
"question_id": <题目ID>
"stem": <题干>,
"selections": {
"id": <string 选项内容> // id range from 1 to 4 or more, means A,B,C,D and etc.
},
"answer": <integer range from 1 to 4>
}
- 返回数据格式
{
"status": 200
}
PS: 如果"page"缺失,默认返回第一页的内容(20个) 如果指定的"page">最大页数,则返回最后一页的内容
- 传入数据格式
<page, an integer range from 1 to infinite>
- 返回数据格式
{
page: <integer range from 1 to infinite 当前页数>,
"total_page": <integer range from 1 to infinite>,
"questions": [
{
"question_id": <题目ID>,
"stem": <题干>,
"selections": [<string 选项内容>],
"answer": <integer range from 1 to 4>
}
]
}
- 传入数据格式
<test_paper(试卷ID)>
- 返回数据格式
{
"title": <试卷名称>,
"duration": <integer 持续时间 range from 0 to infinite, unit: minute>,
"questions":[
{
"question_id": <question_ID>,
"stem": <题干>,
"selections": [<string 选项内容>],
"answer": <integer range from 1 to 4>,
"score": <score is an integer range from 0 to 100>
}
]
}
- 传入数据格式
{
"title": <试卷名称>,
"duration": <integer 持续时间 range from 0 to infinite, unit: minute>,
questions:[
"question_id": <question_ID>,
"score": <score is an integer range from 0 to 100>
]
}
- 返回数据格式
{
"test_paper_id": <试卷ID>
}
- 传入数据格式
{
"test_paper_id": <试卷的ID>
}
- 返回数据格式
{
"status": 200
}
PS:
- 放在"questions"中的题目: 如果传入的题目是原本试卷已经存在的,则覆盖已有题目的分数 如果传入的题目是原本试卷不存在的,则向试卷添加此题目
- 放在"delete_questions"中的题目: 从试卷中删除对应的题目
- 存在的项覆盖,不存在的项不变,id不可缺
- 传入数据格式
{
"test_paper_id": <试卷的ID>,
"title": <string 试卷名称>,
"duration": <integer 持续时间 range from 0 to infinite, unit: minute>,
"questions" :[
"question_id": <question_ID>,
"score": <score is an integer range from 0 to 100>
],
"delete_questions": [
"question_id": <question_ID>
]
}
- 返回数据格式
{
"status": 200
}
PS: 如果"page"缺失,默认返回第一页的内容(20个) 如果指定的"page">最大页数,则返回最后一页的内容
- 传入数据格式
<page, an integer range from 1 to infinite>
- 返回数据格式
{
page: <integer range from 1 to infinite 当前页数>,
"total_page": <integer range from 1 to infinite>,
"test_papers": [
{
"test_paper_id": <试卷ID>,
"title": <试卷名称>,
"duration": <integer 持续时间 range from 0 to infinite, unit: minute>
}
]
"status": 200
}
- 传入数据格式
<test_id(测试ID)>
- 返回数据格式
{
"test_title": <string 测试名称>,
"test_paper_time": <string 试卷名称>,
"duration": <integer 持续时间 range from 0 to infinite, unit: minute>,
"start_time": <测试开始时间(YYYY-MM-DD HH:MM:SS)>,
"end_time": <测试截止时间(YYYY-MM-DD HH:MM:SS)>,
"test_paper_id": <试卷ID>
}
- 传入数据格式
{
"test_paper_id": <需要用到的试卷ID>,
"title": <string 测试名称>,
"start_time": <测试开始时间(YYYY-MM-DD HH:MM:SS)>,
"end_time": <测试截止时间(YYYY-MM-DD HH:MM:SS)>
}
- 返回数据格式
{
"test_id": <测试的ID>,
"status": 200
}
- 传入数据格式
{
"test_id": <测试ID>
}
- 返回数据格式
{
"status": 200
}
PS: 存在的项覆盖,不存在的项不变,id不可缺
- 传入数据格式
{
"test_id": <需要更改的测试ID>,
"test_paper_id": <需要用到的试卷ID>,
"title": <string 测试名称>,
"start_time": <测试开始时间(YYYY-MM-DD HH:MM:SS)>,
"end_time": <测试截止时间(YYYY-MM-DD HH:MM:SS)>
}
- 返回数据格式
{
"status": 200
}
PS: 如果"page"缺失,默认返回第一页的内容(20个) 如果指定的"page">最大页数,则返回最后一页的内容
- 传入数据格式
<page, an integer range from 1 to infinite>
- 返回数据格式
{
page: <integer range from 1 to infinite 当前页数>,
"total_page": <integer range from 1 to infinite>,
"tests": [
{
"test_id": <测试ID>,
"title": <测试名称>
}
]
}
- 传入数据格式
<test_id(测试ID)>
- 返回数据格式
{
"title": <测试名称>,
"students_num": <integer 参加考试的学生人数>,
"student_average": <float 平均分>,
"students": [
{
"student_id": <student的ID>,
"student_name": <学生姓名>,
"score": <学生的最终成绩>
}
]
}
- 传入数据格式
<student_id(学生ID)>
- 返回数据格式
{
"student_id": <学生ID>,
"name": <学生姓名>
}
- 传入数据格式
{
"student_id": <老师指定的学生学号>
"name": <学生姓名>,
"password": <密码>
}
- 返回数据格式
{
"status": 200
}
PS: 存在的项覆盖,不存在的项不变,id不可缺
- 传入数据格式
{
"student_id": <学生ID>,
"name": <学生姓名>,
"password": <密码>
}
- 返回数据格式
{
"status": 200
}
- 传入数据格式
{
"student_id": <学生ID>
}
- 返回数据格式
{
"status": 200
}
PS: 如果"page"缺失,默认返回第一页的内容(20个) 如果指定的"page">最大页数,则返回最后一页的内容
- 传入数据格式
<page, an integer range from 1 to infinite>
- 返回数据格式
{
page: <integer range from 1 to infinite 当前页数>,
"total_page": <integer range from 1 to infinite>,
"students": [
{
"student_id": <学生ID>,
"name": <学生名字>
}
]
}
- 传入数据格式
{
"id": <student ID>,
"password": <password>,
}
- 返回数据格式
{
"status": 200
}
- 传入数据格式
<test_id(测试ID)>
- 返回数据格式
{
"title": <string 测试名称>,
"duration": <integer 持续时间 range from 0 to infinite, unit: minute>,
"start_time": <测试开始时间(YYYY-MM-DD HH:MM:SS)>,
"end_time": <测试截止时间(YYYY-MM-DD HH:MM:SS)>,
"questions":[
{
"question_id": <question_ID>,
"stem": <题干>,
"selections": [<string 选项内容>],
"score": <score is an integer range from 0 to 100>
}
]
}
PS: 此API表示获取学生可以参加但还未参加的测试列表
- 传入数据格式
<student ID>
- 返回数据格式
{
"tests": [
{
"test_id": <测试ID>,
"title": <测试名称>,
"total_score": <测试总分>,
"num_questions": <总题数>,
"duration": <integer 持续时间 range from 0 to infinite, unit: minute>,
"start_time": <测试开始时间(YYYY-MM-DD HH:MM:SS)>,
"end_time": <测试截止时间(YYYY-MM-DD HH:MM:SS)>
}
]
}
- 传入数据格式
/<student_id>/<test_id(测试ID)>/
- 返回数据格式
{
"title": <string 测试名称>,
"duration": <integer 持续时间 range from 0 to infinite, unit: minute>,
"start_time": <测试开始时间(YYYY-MM-DD HH:MM:SS)>,
"end_time": <测试截止时间(YYYY-MM-DD HH:MM:SS)>,
"questions":[
{
"question_id": <question_ID>,
"stem": <题干>,
"selections": [<string 选项内容>],
"selection": <integer range from 1 to 4 or more 学生提交的答案>
"answer": <integer range from 1 to 4 or more>,
"score": <score is an integer range from 0 to 100>
}
]
}
- 传入数据格式
{
"student_id": <student id>,
"test_id": <测试ID>,
"selections": [
{
"question_id": <问题ID>,
"selection": <integer range from 1 to 4 or more 学生提交的答案>
}
]
}
- 返回数据格式
{
"status": 200
}
PS: 此API表示获取学生已经参加的测试列表
- 传入数据格式
<student id>
- 返回数据格式
{
"tests": [
{
"test_id": <测试ID>,
"title": <测试名称>,
"start_time": <测试开始日期>,
"end_time": <测试结束日期>,
"user_score": <用户得分>,
"total_score": <测试总分>,
"duration": <测试持续时间>
}
]
}