学法减分题库

正常 NEW

学法减分题库查询(交管 12123 复习题库),支持搜索/随机出题/答题校验。

协议:HTTP 格式:JSON 版本:v1.0.0日调用量:3171次
¥ 0.002 / 次
按次计费
购买次数包更优惠,低至 0.0016 元/次

健康检查

服务存活探测

服务存活探测。无需任何参数,用于检查题库服务是否可用,返回数据版本、服务器当前时间(UTC)、支持的题型列表,以及批量查询与随机抽取的单次条数上限。

调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET http://www.shujuyu.cn/v1/api/xuefa/ping JSON

请求参数

参数名类型必填说明
key string 是 您的API密钥,可在个人中心获取

返回参数说明

参数名类型说明
code integer 状态码,200 表示成功
msg string 返回消息
data object 业务数据
data.version string 数据版本
data.time string 服务器当前时间(UTC,格式 Y-m-d H:i:s)
data.types array 类型列表
data.types[] string 题型名称
data.batch_limit integer 批量查询单次允许的最大输入条数
data.random_limit integer 随机抽取单次可返回的最大条数

请求示例

返回示例

{"msg":"pong","code":200,"data":{"time":"2026-10-22 14:49:03","types":["单选题","多选题","判断题"],"version":"1.0","batch_limit":10,"random_limit":10}}

服务状态

返回服务可用状态

返回服务可用状态(不返回数据量统计)。

调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET http://www.shujuyu.cn/v1/api/xuefa/stats JSON

请求参数

参数名类型必填说明
key string 是 您的API密钥,可在个人中心获取

返回参数说明

参数名类型说明
code integer 状态码,200 表示成功
msg string 返回消息
data object 业务数据
data.status string 服务可用状态

请求示例

返回示例

{"msg":"success","code":200,"data":{"status":"ok"}}

题型列表

返回题型列表

返回题库支持的题型列表,可据此确定 query、search、list、random 的 type 过滤值。

调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET http://www.shujuyu.cn/v1/api/xuefa/types JSON

请求参数

参数名类型必填说明
key string 是 您的API密钥,可在个人中心获取

返回参数说明

参数名类型说明
code integer 状态码,200 表示成功
msg string 返回消息
data object 业务数据
data.total integer 题型数量
data.list array 数据列表
data.list[] object 列表中的单条记录
data.list[].type string 类型

请求示例

返回示例

{"msg":"success","code":200,"data":{"list":[{"type":"判断题"},{"type":"单选题"},{"type":"多选题"}],"total":3}}

可查询字段列表

返回题目可查询字段

返回题目可查询的业务字段清单,包含字段名(field)、中文标签(label)以及是否属于精简字段(brief)。可据此构造 fields 参数。

调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET http://www.shujuyu.cn/v1/api/xuefa/fields JSON

请求参数

参数名类型必填说明
key string 是 您的API密钥,可在个人中心获取

返回参数说明

参数名类型说明
code integer 状态码,200 表示成功
msg string 返回消息
data object 业务数据
data.total integer 字段数量
data.list array 数据列表
data.list[] object 列表中的单条记录
data.list[].field string 字段名,可直接用于 fields 参数
data.list[].label string 字段中文标签
data.list[].brief boolean 是否为精简字段(true 表示 brief=true 时也会返回)

请求示例

返回示例

{"msg":"success","code":200,"data":{"list":[{"brief":true,"field":"id","label":"ID"},{"brief":true,"field":"type","label":"题型"},{"brief":true,"field":"question","label":"题目内容"},{"brief":false,"field":"options","label":"选项"},{"brief":false,"field":"answer","label":"答案"},{"brief":false,"field":"images","label":"图片URL列表"}],"total":6}}

题目图片

获取题目图片

按文件名获取题目图片。题目数据中的 images 数组元素可直接作为 f 参数,或直接放入 img 标签。返回统一 JSON 结构,图片内容以 Base64 放在 data.base64,并额外提供 data.data_uri 可直接作为图片地址使用。文件名非法返回 4001,文件不存在返回 4041。

调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET http://www.shujuyu.cn/v1/api/xuefa/image JSON

请求参数

参数名类型必填说明
key string 是 您的API密钥,可在个人中心获取
f string 否 图片文件名(如 1.jpg、100.png);与 filename 二选一,同时传时以 f 为准;文件不存在 → 4041
filename string 否 图片文件名,与 f 等价;与 f 二选一

返回参数说明

参数名类型说明
code integer 状态码,200 表示成功
msg string 返回消息
data object 图片数据(以 Base64 文本返回,不返回二进制流)
data.content_type string 图片 MIME 类型,如 image/jpeg、image/png
data.size integer 图片字节数(即解码 data.base64 后的长度)
data.base64 string Base64 编码的图片内容,解码后即为原始图片字节
data.data_uri string 可直接用于 img 标签 src 的 Data URI,形如 data:image/jpeg;base64,...

请求示例

返回示例

{"msg":"success","code":200,"data":{"size":79919,"base64":"/9j/4AAQSkZJRgABAQEA3ADcAAD/2wBDAAIBAQEBAQIBAQECAgICAgQDAgICAgUEBAMEBgUGBgYFBgYGBwkIBgcJBwYGCAsICQoKCgoKBggLDAsKDAkKCgr/2wBDAQICAgICAgUDAwUKBwYHCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgr/wAARCAFFAy0DASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUF…","data_uri":"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEA3ADcAAD/2wBDAAIBAQEBAQIBAQECAgICAgQDAgICAgUEBAMEBgUGBgYFBgYGBwkIBgcJBwYGCAsICQoKCgoKBggLDAsKDAkKCgr/2wBDAQICAgICAgUDAwUKBwYHCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgr/wAARCAFFAy0DASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcIC…","content_type":"image/jpeg"}}

精确查询

按题目内容查询

按题目内容精确查询。先用 keyword 与题干做精确匹配(data.mode=exact),无命中时自动降级为模糊匹配(data.mode=like)。适合已知完整题干时定位题目 ID。

调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET http://www.shujuyu.cn/v1/api/xuefa/query JSON

请求参数

参数名类型必填说明
key string 是 您的API密钥,可在个人中心获取
keyword string 是 查询关键词(必填,缺失返回 4001 缺少参数: keyword)
limit integer 否 每页条数,默认 10,最大 20;超出上限按 20 处理,传 0 或负数按 1 条处理
offset integer 否 翻页偏移量,默认 0;传非数字或负数按 0 处理;偏移超出命中总数时返回空数组,code 仍为 0。响应中 data.offset 会回显实际生效的偏移量
type string 否 按题型过滤,可选值见 types 接口
brief boolean 否 是否精简返回
fields string 否 指定返回字段,多个字段用空格或逗号分隔;可选值:id、type、question、options、answer、images

返回参数说明

参数名类型说明
code integer 状态码,200 表示成功
msg string 返回消息
data object 业务数据
data.list array 数据列表
data.list[] object 列表中的单条记录
data.list[].id integer 记录唯一标识
data.list[].type string 类型
data.list[].question string 题目内容
data.list[].options object 选项键值对(如 {"A":"...","B":"..."});判断题无选项时为 null
data.list[].answer string 答案
data.list[].images array 图片 URL 列表;返回网关相对路径(如 /v1/api/xuefa/image?f=1.jpg),拼接站点域名即可访问
data.limit integer 本次实际生效的每页条数(已按 1~20 裁剪)
data.offset integer 本次请求实际生效的翻页偏移量(非法值已归 0)
data.total integer 命中总条数(用于计算翻页)
data.mode string 匹配模式:exact=精确命中;like=精确未命中后降级为模糊匹配
data.error string 服务暂不可用时的错误标识(如 db_unavailable),正常时不返回
data.list[].options.A string 选项 A 内容
data.list[].options.B string 选项 B 内容
data.list[].options.C string 选项 C 内容
data.list[].options.D string 选项 D 内容

请求示例

返回示例

{"msg":"success","code":200,"data":{"list":[{"id":762,"type":"判断题","answer":"错误","images":null,"options":null,"question":"雨天行车视线受阻,开启远光灯会提高能见度。"},{"id":1662,"type":"单选题","answer":"D","images":null,"options":{"A":"以正常速度行驶","B":"持续鸣喇叭示意其让道","C":"加速绕行","D":"提前鸣喇叭,并适当降低车速"},"question":"雨天行车,遇撑雨伞和穿雨衣的行人在公路上行走时,应怎样做?"},{"id":1762,"type":"判断题","answer":"正确","images":null,"options":null,"question":"在大雨天行车,为避免发生“水滑”而造成危险,要控制速度行驶。"}],"mode":"like","limit":10,"total":6,"offset":0}}

全文搜索

搜索题目

按关键词检索题目。关键词长度不少于 2 且不含标点时走全文索引(data.mode=fulltext,结果含 relevance 相关度);关键词过短或含标点时降级为模糊匹配(data.mode=like)。适合按知识点批量找题。

调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET http://www.shujuyu.cn/v1/api/xuefa/search JSON

请求参数

参数名类型必填说明
key string 是 您的API密钥,可在个人中心获取
keyword string 是 检索关键词(必填,缺失返回 4001 缺少参数: keyword;仅支持 keyword,不支持 q 别名)
limit integer 否 每页条数,默认 20,最大 20;超出上限按 20 处理,传 0 或负数按 1 条处理,传非数字按默认 20 处理
offset integer 否 翻页偏移量,默认 0(从第 1 条开始);传非数字按 0 处理,传负数按 0 处理。与 limit 配合可遍历全部结果:第 N 页传 offset=(N-1)×limit;偏移超出命中总数时返回空数组,code 仍为 0。响应中 data.offset 会回显实际生效的偏移量
type string 否 按题型过滤,可选值见 types 接口(如 单选题、判断题、多选题)
brief boolean 否 是否精简返回(true 时省略部分字段)
fields string 否 指定返回字段,多个字段用空格或逗号分隔;可选值:id、type、question、options、answer、images;不传返回默认字段集合

返回参数说明

参数名类型说明
code integer 状态码,200 表示成功
msg string 返回消息
data object 业务数据
data.list array 数据列表
data.list[] object 列表中的单条记录
data.list[].id integer 记录唯一标识
data.list[].type string 类型
data.list[].question string 题目内容
data.list[].options object 选项键值对(如 {"A":"...","B":"..."});判断题无选项时为 null
data.list[].answer string 答案
data.list[].images array 图片 URL 列表;返回网关相对路径(如 /v1/api/xuefa/image?f=1.jpg),拼接站点域名即可访问
data.list[].relevance number 相关度得分(仅全文检索模式返回,数值越大越相关;同一关键词下大量结果可能同分并列)
data.limit integer 本次请求实际生效的每页条数(已按 1~20 裁剪)
data.offset integer 本次请求实际生效的翻页偏移量(非法值已归 0)
data.total integer 命中总条数(用于计算翻页)
data.mode string 匹配模式:fulltext=全文索引(结果含 relevance);like=关键词过短或含标点时降级为模糊匹配
data.error string 服务暂不可用时的错误标识(如 db_unavailable),正常时不返回
data.list[].options.A string 选项 A 内容
data.list[].options.B string 选项 B 内容
data.list[].options.C string 选项 C 内容
data.list[].options.D string 选项 D 内容

请求示例

返回示例

{"msg":"success","code":200,"data":{"list":[{"id":29,"type":"判断题","answer":"正确","images":null,"options":null,"question":"佟某驾驶一辆大客车(乘载54人,核载55人)以45公里的\n时速行经泥泞路段时,机动车侧滑驶出路外坠入深沟,导致14人死亡40人受伤。佟某的主要违法行为是超速行驶。","relevance":7.294968605041504},{"id":139,"type":"判断题","answer":"正确","images":null,"options":null,"question":"佟某驾驶一辆大客车(乘载54人,核载55人)以45公里的时速行径泥泞路段时,机动车侧滑驶出路外坠入深沟,导致14人死亡、40人受伤。佟某的主要违法行为是超速行驶。","relevance":7.294968605041504},{"id":2627,"type":"多选题","answer":"ABCD","images":null,"options":{"A":"反应距离延长","B":"视野变窄","C":"加重事故后果","D":"制动距离延长"},"question":"驾驶汽车超速行驶有哪些危害?","relevance":7.294968605041504}],"mode":"fulltext","limit":20,"total":8,"offset":0}}

分页列表

分页返回题目列表

分页返回题库全部题目,按 ID 升序。这是唯一支持真分页(page / page_size)的端点,可配合 data.total 与 data.pages 遍历全库。

调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET http://www.shujuyu.cn/v1/api/xuefa/list JSON

请求参数

参数名类型必填说明
key string 是 您的API密钥,可在个人中心获取
page integer 否 页码,默认 1;传 0 或负数按 1 处理
page_size integer 否 每页条数,默认 20,最大 20;超出上限按 20 处理,传 0 或负数按 1 处理。本接口支持真分页,不支持 limit 参数
type string 否 按题型过滤,可选值见 types 接口(单选题、多选题、判断题);不传返回全部题型
brief boolean 否 是否精简返回,true 时仅返回 id、type、question 三个字段
fields string 否 指定返回字段,多个字段用空格或逗号分隔;可选值:id、type、question、options、answer、images;传了 fields 时忽略 brief

返回参数说明

参数名类型说明
code integer 状态码,200 表示成功
msg string 返回消息
data object 业务数据
data.list array 数据列表
data.list[] object 列表中的单条记录
data.list[].id integer 记录唯一标识
data.list[].type string 类型
data.list[].question string 题目内容
data.list[].options object 选项键值对(如 {"A":"...","B":"..."});判断题无选项时为 null
data.list[].options.A string 选项 A 内容
data.list[].options.B string 选项 B 内容
data.list[].options.C string 选项 C 内容
data.list[].options.D string 选项 D 内容
data.list[].answer string 答案
data.list[].images array 图片 URL 列表;返回网关相对路径(如 /v1/api/xuefa/image?f=1.jpg),拼接站点域名即可访问
data.total integer 当前筛选条件下的匹配题数(分页用)
data.page integer 当前页码
data.page_size integer 每页条数
data.pages integer 总页数 = ceil(total / page_size)
data.error string 服务暂不可用时的错误标识(如 db_unavailable),正常时不返回

请求示例

返回示例

{"msg":"success","code":200,"data":{"list":[{"id":1,"type":"单选题","answer":"C","images":null,"options":{"A":"以正常速度行驶","B":"加速从左侧绕行","C":"提前减速鸣喇叭","D":"临近鸣喇叭示意"},"question":"驾驶机动车在雨天遇到撑雨伞和穿雨衣的行人在路边行走怎样礼让?"},{"id":2,"type":"多选题","answer":"ABC","images":null,"options":{"A":"相对方向行驶的右转弯机动车让左转弯的车辆先行","B":"没有交通标志、标线控制时,在进入路口前停车瞭望,让右方道路的来车先行","C":"转弯的机动车让直行的车辆、行人先行","D":"相对方向行驶的左转弯机动车让右转弯的车辆先行"},"question":"驾驶机动车通过未设置交通信号灯的交叉路口时,下列说法正确的是什么?"},{"id":3,"type":"多选题","answer":"ABCD","images":null,"options":{"A":"由公安机关交通管理部门扣留机动车至违法状态消除","B":"超过额定乘员未达20%的,处200元以上500元以下罚款","C":"运输单位的车辆有上述情形,经处罚不改的,对直接负责的主管人员处2000元以上5000元以下罚款","D":"超过额定乘员20%的,处500元以上2000元以下罚款"},"question":"公路客运车辆载客超过额定乘员的,将受到何种处罚?"}],"page":1,"pages":208,"total":4147,"page_size":20}}

题目详情

按 ID 获取题目详情

按题目 ID 获取单条题目的完整信息,包含题干、选项、答案与图片列表。ID 不存在时返回 4041(题目不存在)。

调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET http://www.shujuyu.cn/v1/api/xuefa/detail JSON

请求参数

参数名类型必填说明
key string 是 您的API密钥,可在个人中心获取
id integer 是 题目 ID(必填;不存在的 ID 返回 4041 题目不存在)
brief boolean 否 是否精简返回,true 时仅返回 id、type、question 三个字段
fields string 否 指定返回字段,多个字段用空格或逗号分隔;可选值:id、type、question、options、answer、images;传了 fields 时忽略 brief

返回参数说明

参数名类型说明
code integer 状态码,200 表示成功
msg string 返回消息
data object 业务数据
data.id integer 唯一标识
data.type string 类型
data.question string 题目内容
data.options object 选项键值对(如 {"A":"...","B":"..."});判断题无选项时为 null
data.options.A string 选项 A 内容
data.options.B string 选项 B 内容
data.options.C string 选项 C 内容
data.options.D string 选项 D 内容
data.answer string 答案
data.images array 图片 URL 列表;返回网关相对路径(如 /v1/api/xuefa/image?f=1.jpg),拼接站点域名即可访问

请求示例

返回示例

{"msg":"success","code":200,"data":{"id":1,"type":"单选题","answer":"C","images":null,"options":{"A":"以正常速度行驶","B":"加速从左侧绕行","C":"提前减速鸣喇叭","D":"临近鸣喇叭示意"},"question":"驾驶机动车在雨天遇到撑雨伞和穿雨衣的行人在路边行走怎样礼让?"}}

批量查询

批量查询题目

批量查询题目(POST,JSON Body)。单次最多提交 10 个查询值,超出直接报错(4002);未命中的条目以 {query, error:"not_found"} 的形式出现在 data.list 中。key 支持 id(默认)或 type。

调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
POST http://www.shujuyu.cn/v1/api/xuefa/batch JSON

请求参数

参数名类型必填说明
items array 是 题目 ID 数组(最多 10 条,超出直接报错 4002);默认按 id 校验,元素须为数字 ID;如需按题目类型筛选可加参数 key=type
key string 否 items 校验依据,可选 id(默认)或 type
brief boolean 否 是否精简返回,true 时仅返回 id、type、question 三个字段
fields string 否 指定返回字段,多个字段用空格或逗号分隔;可选值:id、type、question、options、answer、images;传了 fields 时忽略 brief

返回参数说明

参数名类型说明
code integer 状态码,200 表示成功
msg string 返回消息
data object 业务数据
data.total integer 本次提交的原始查询值条数
data.returned integer 实际返回的条目数(去重、过滤非法值后)
data.ok integer 命中的题目数
data.not_found integer 未命中的查询值数
data.truncated boolean 保留字段,当前恒为 false(超过 10 条时直接返回 4002 错误,不会截断)
data.max_limit integer 单次最多返回条数(10)
data.list array 数据列表
data.list[] object 列表中的单条记录
data.list[].id integer 记录唯一标识
data.list[].type string 类型
data.list[].question string 题目内容
data.list[].options object 选项键值对(如 {"A":"...","B":"..."});判断题无选项时为 null
data.list[].options.A string 选项 A 内容
data.list[].options.B string 选项 B 内容
data.list[].options.C string 选项 C 内容
data.list[].options.D string 选项 D 内容
data.list[].answer string 答案
data.list[].images array 图片 URL 列表;返回网关相对路径(如 /v1/api/xuefa/image?f=1.jpg),拼接站点域名即可访问
data.list[].query integer 未命中时回显的原始查询值(仅 not_found 条目出现)
data.list[].error string 未命中标记,固定为 not_found(仅未命中条目出现)

请求示例

返回示例

{"msg":"success","code":200,"data":{"ok":3,"list":[{"id":1,"type":"单选题","answer":"C","images":null,"options":{"A":"以正常速度行驶","B":"加速从左侧绕行","C":"提前减速鸣喇叭","D":"临近鸣喇叭示意"},"question":"驾驶机动车在雨天遇到撑雨伞和穿雨衣的行人在路边行走怎样礼让?"},{"id":2,"type":"多选题","answer":"ABC","images":null,"options":{"A":"相对方向行驶的右转弯机动车让左转弯的车辆先行","B":"没有交通标志、标线控制时,在进入路口前停车瞭望,让右方道路的来车先行","C":"转弯的机动车让直行的车辆、行人先行","D":"相对方向行驶的左转弯机动车让右转弯的车辆先行"},"question":"驾驶机动车通过未设置交通信号灯的交叉路口时,下列说法正确的是什么?"},{"id":3,"type":"多选题","answer":"ABCD","images":null,"options":{"A":"由公安机关交通管理部门扣留机动车至违法状态消除","B":"超过额定乘员未达20%的,处200元以上500元以下罚款","C":"运输单位的车辆有上述情形,经处罚不改的,对直接负责的主管人员处2000元以上5000元以下罚款","D":"超过额定乘员20%的,处500元以上2000元以下罚款"},"question":"公路客运车辆载客超过额定乘员的,将受到何种处罚?"}],"total":3,"returned":3,"max_limit":10,"not_found":0,"truncated":false}}

随机出题

随机抽取题目

随机抽取指定数量的题目,可用于模拟练习或考试。默认返回答案,传 answer=false 只返回题干。每次请求结果随机,不做缓存。

调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET http://www.shujuyu.cn/v1/api/xuefa/random JSON

请求参数

参数名类型必填说明
key string 是 您的API密钥,可在个人中心获取
count integer 否 返回条数,默认 10,最大 10;超出上限按 10 处理
type string 否 限定题型,可选值见 types 接口(单选题、多选题、判断题);不传则全库随机
answer boolean 否 是否返回答案,默认 true;传 false(或 0/off/no)时返回结果不含 answer 字段

返回参数说明

参数名类型说明
code integer 状态码,200 表示成功
msg string 返回消息
data object 业务数据
data.list array 数据列表
data.list[] object 列表中的单条记录
data.list[].id integer 记录唯一标识
data.list[].type string 类型
data.list[].question string 题目内容
data.list[].options object 选项键值对(如 {"A":"...","B":"..."});判断题无选项时为 null
data.list[].answer string 正确答案;请求 answer=false 时不返回该字段
data.list[].images array 图片 URL 列表;返回网关相对路径(如 /v1/api/xuefa/image?f=1.jpg),拼接站点域名即可访问
data.count integer 本次实际返回的题目条数
data.error string 服务暂不可用时的错误标识(如 db_unavailable),正常时不返回
data.list[].options.A string 选项 A 内容
data.list[].options.B string 选项 B 内容
data.list[].options.C string 选项 C 内容
data.list[].options.D string 选项 D 内容
data.list[].images[] string 图片 URL

请求示例

返回示例

{"msg":"success","code":200,"data":{"list":[{"id":29,"type":"判断题","answer":"正确","images":null,"options":null,"question":"佟某驾驶一辆大客车(乘载54人,核载55人)以45公里的\n时速行经泥泞路段时,机动车侧滑驶出路外坠入深沟,导致14人死亡40人受伤。佟某的主要违法行为是超速行驶。"},{"id":786,"type":"单选题","answer":"C","images":null,"options":{"A":"超车完毕驶回原车道时可不开转向灯","B":"驶离停车地点时不必开启转向灯","C":"靠边停车时应提前开启右转向灯","D":"准备变更车道时可以不开转向灯"},"question":"关于驾驶机动车时转向灯的使用,以下说法正确的是什么?"},{"id":920,"type":"单选题","answer":"A","images":["/v1/api/xuefa/image?f=297.jpg"],"options":{"A":"路口警示","B":"禁止右转","C":"准许直行","D":"加速通过"},"question":"驾驶机动车在路口遇到这种信号灯表示什么意思?"}],"count":10}}

答题校验

校验用户答案

校验用户提交的答案是否正确(POST,JSON Body)。单选题填选项字母;多选题按字母集合比较(顺序无关);判断题兼容 正确/错误/对/错/是/否/Y/N/T/F/TRUE/FALSE/√/×/1/0 等写法。题目不存在返回 4041,答案超过 20 字符返回 4002。

调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
POST http://www.shujuyu.cn/v1/api/xuefa/check JSON

请求参数

参数名类型必填说明
key string 是 您的API密钥,可在个人中心获取
id integer 是 题目 ID
answer string 是 用户答案

返回参数说明

参数名类型说明
code integer 状态码,200 表示成功
msg string 返回消息
data object 业务数据
data.correct boolean 用户答案是否正确
data.correct_answer string 标准答案(单选题为选项字母,多选题为字母串,判断题为 正确/错误)
data.question string 题目内容
data.type string 类型
data.images array 图片 URL 数组,元素形如 /api/xuefa/image?f=1.jpg;无图片时为 null

请求示例

返回示例

{"msg":"success","code":200,"data":{"type":"单选题","images":null,"correct":false,"question":"驾驶机动车在雨天遇到撑雨伞和穿雨衣的行人在路边行走怎样礼让?","correct_answer":"C"}}

产品说明

产品概述

学法减分题库查询(交管 12123 复习题库),支持搜索/随机出题/答题校验。

使用场景

数据查询:快速集成 学法减分题库 到您的应用中
业务系统:将 学法减分题库 数据嵌入业务流程
开发工具:通过 API 接口获取 教育学习 数据
数据分析:基于 学法减分题库 数据进行分析和决策

费用计算

按次计费单价
¥0.002 / 次
每次调用接口从账户余额中扣除相应费用,VIP 用户可享折扣

扣费优先级

免费额度
次数包
余额扣费

计费方式详解

1 免费额度
· 接口每日免费额度已关闭
· VIP 用户月度免费额度:
· 个人版:每月 5000 次,本接口月上限 5000 次
· 专业版:每月 30000 次,本接口月上限 30000 次
· 企业版:每月 200000 次,本接口月上限 200000 次
· 账户如有注册/活动赠送的免费次数,会优先于接口免费额度扣减
· VIP 月度免费额度仅适用于单次售价不高于 ¥0.0800/次 的接口;接口每日免费额度按接口配置执行
VIP 月度免费额度每月重置,未使用部分不累计至下月。
2 次数包
预付费购买固定调用次数,最高可省 20%(相对按次付费),用完为止。
次数包为独立计费,不与 VIP 折扣叠加。
请在有效期内使用,过期后未使用的次数不可再用。
3 余额扣费
按次从账户余额扣除费用;所有用户可享量折扣,VIP 用户额外享 VIP 折扣。
扣费公式:实际扣费 = 接口单价 × (1 - VIP 折扣比例 - 量折扣比例),并受总折扣上限和最低利润率保护约束
VIP 折扣: 个人版9折 专业版8折 企业版7折
量折扣: 月付费调用 ≥1000 次享 2%、 月付费调用 ≥10000 次享 5%、 月付费调用 ≥20000 次享 10%
· 量折扣按账号当月全部接口的付费调用次数统计,达到更高档位时按更高档位计算
总折扣上限:VIP 折扣 + 量折扣合计不超过 50%
最低利润率保护:折后价不得低于成本价 × (1 + 15%);若接口售价本身低于该保护价,则取消折扣并按售价计费
余额不足时调用将失败,请及时充值。

次数包方案

方案名称调用次数价格折算单价比按次付费节省有效期
100次调用包 100 次 ¥0.2 ¥0.0020/次 - 365 天
500次调用包 500 次 ¥0.95 ¥0.0019/次 省5% 365 天
1000次调用包 1000 次 ¥1.8 ¥0.0018/次 省10% 365 天
5000次调用包 5000 次 ¥8.5 ¥0.0017/次 省15% 365 天
10000次调用包 10000 次 ¥16 ¥0.0016/次 省20% 365 天

VIP 权益对比

等级每月免费次数本接口月免费上限折扣VIP 折后单价
免费版 按接口配置 — - ¥0.002/次
个人版 5000 次 5000 次 10% ¥0.0018/次
专业版 30000 次 30000 次 20% ¥0.0016/次
* VIP 月度免费额度每月重置。每月免费次数为账号级 VIP 月额度,本接口月免费上限为其中对本接口的限制(接口可单独设置上限或关闭)。VIP 折扣仅适用于余额扣费方式,VIP 折后单价不含量折扣。 本接口已关闭接口级月度免费额度(不影响 VIP 月度免费额度)。接口每日免费额度已关闭。

费用计算示例

* 以下示例未包含量折扣,量折扣按账号当月全部接口的付费调用量另行计算。
示例1:普通用户按次付费
调用 1000 次,费用 = 0.002 × 1000 = ¥2.00
示例2:个人版用户按次付费(仅 VIP 折扣,已考虑最低利润率保护)
调用 1000 次,折扣约 10%,费用 = 0.002 × (1 - 10%) × 1000 ≈ ¥1.80
示例3:购买「500次调用包」次数包
支付 ¥0.95,获得 500 次调用,折算单价 ¥0.0019/次
同等次数按次付费需 ¥1.00,次数包可节省 ¥0.05

错误码说明

错误码说明解决方案
200 请求成功 -
400000 请求参数错误 检查参数名、格式与取值
401000 认证失败 检查 Authorization: Bearer 密钥是否正确、是否过期
402000 账户余额不足 充值后重试
403000 无访问权限 确认密钥权限、接口范围与 IP 白名单是否满足要求
404000 接口或端点不存在 检查 API 与端点的请求路径
409000 请求冲突 请稍后重试
422000 参数校验失败 检查参数格式与取值
429000 请求频率或额度超限 降低调用频率,或升级套餐提升额度
500000 服务器内部错误 携带响应中的 request_id 联系技术支持
502000 服务暂时不可用 稍后重试
503000 服务暂时不可用 稍后重试
504000 请求超时 稍后重试

更新日志

暂无更新日志