技术博客
成语词典三大接入点怎么选:搜索 / 详情 / 随机一篇说清

成语词典三大接入点怎么选:搜索 / 详情 / 随机一篇说清

作者: 万维易源
2026-09-03
成语词典接入点搜索详情随机
# 成语词典三大接入点怎么选:搜索 / 详情 / 随机一篇说清 > 接口:成语词典(apiCode=2964) · 接入点:2964-1 / 2964-2 / 2964-3 · 是否免费:是 · 请求方式:POST/GET · 返回格式:JSON · 适用人群:选型阶段的开发者、产品经理 · 阅读时间:约 5 分钟 ## 核心要点 - 三个接入点职责不同:搜索(找哪些)、详情(看一条全貌)、随机(来一条碰运气)。 - **最大坑**:搜索只返回成语名和 id,**没有解释**;解释在详情接入点。 - 选型看目的:列出候选 → 2964-1;展示某条释义 → 2964-2;趣味/每日一句 → 2964-3。 ## Why:为什么选型很重要 成语词典不是「一个接口返回所有东西」。如果你以为调一次搜索就能拿到拼音、解释、出处,会卡在「怎么只有名字」。先弄清三个接入点各自给什么,能避免返工和错误的架构假设。 ## What:三接入点速览 | 接入点 | 名称 | 入参 | 出参 | 典型用途 | |--------|------|------|------|---------| | 2964-1 | 搜索成语 | `keyword`(必填)、`page`(选填) | 分页成语名列表(`id`+`word`) | 输入联想、查词列表、候选 | | 2964-2 | 成语详情 | `id` 或 `word`(二选一) | 单条完整释义 | 点开某条看拼音/解释/出处/示例 | | 2964-3 | 随机成语 | 无 | 单条完整释义 | 每日一成语、抽卡、小游戏 | 请求地址分别为 `https://route.showapi.com/2964-1`、`2964-2`、`2964-3`,均带 `appKey`。 ## How:选型决策 ### 场景 A:用户输入片段,想看有哪些成语 用 **2964-1 搜索成语**,`keyword` 传片段(支持部分匹配)。 ```python import requests APPKEY = "YOUR_APPKEY" r = requests.get("https://route.showapi.com/2964-1", params={"appKey": APPKEY, "keyword": "画", "page": "1"}, timeout=10) body = r.json()["showapi_res_body"] print([it["word"] for it in body["list"]]) # ['画蛇添足', '画龙点睛', ...] ``` ### 场景 B:用户点开某条,要看解释 用 **2964-2 成语详情**,传搜索拿到的 `id`(更精确,避免同名歧义)。 ```python import requests APPKEY = "YOUR_APPKEY" r = requests.post("https://route.showapi.com/2964-2", data={"appKey": APPKEY, "id": "b83eace0-ca55-4b0e-b85a-670d5604e1fc"}, timeout=10) body = r.json()["showapi_res_body"] print(body["word"], body["pinyin"], body["explain"]) ``` ### 场景 C:想随机来一条做每日打卡 用 **2964-3 随机成语**,无需任何参数。 ```python import requests APPKEY = "YOUR_APPKEY" r = requests.post("https://route.showapi.com/2964-3", data={"appKey": APPKEY}, timeout=10) body = r.json()["showapi_res_body"] print(body["word"], body["explain"]) ``` ## 进阶 / 边界 - 搜索的 `list` 每项只有 `id`/`word`,要释义必须再调详情——这是主链路,见[两步流](https://www.showapi.com/guides/idiom-search-detail-flow-2964)。 - 详情的 `id` 与 `word` 二选一;推荐用 `id`(搜索结果已带),避免同名成语歧义,详见[详情参数篇](https://www.showapi.com/guides/idiom-detail-id-or-word-2964)。 - 随机成语每次结果不同,不适合「精确复现某条」,需要确定结果请用搜索+详情。 ## FAQ **Q:能不能一次搜索就拿到所有解释?** 不能。搜索接口设计为只返回列表(id+word),解释在详情接入点,需二次调用。 **Q:三个接入点都要单独开通吗?** 接口级(apiCode=2964)开通即可,三个接入点同属一个接口,MCP/OpenAPI 也覆盖全部。 **Q:随机成语能指定分类或字数吗?** 按文档,2964-3 无参数,不支持按字数/分类筛选。需要筛选请用搜索+关键词。 **Q:详情用 id 好还是 word 好?** 优先 `id`:搜索结果已提供且唯一,能避开同名歧义;`word` 适合你只持有成语名时。详见[参数篇](https://www.showapi.com/guides/idiom-detail-id-or-word-2964)。 ## 相关能力 / 下一步阅读 - [成语词典:5 分钟接入,从注册到第一条搜索结果](https://www.showapi.com/guides/idiom-dictionary-quickstart-2964) - [成语词典:从搜索到释义的两步流,搭建查词功能](https://www.showapi.com/guides/idiom-search-detail-flow-2964) - [随机成语能怎么玩?每日一成语 / 打卡 / 小游戏集成](https://www.showapi.com/guides/idiom-random-usage-2964) - **本系列共 15 篇**:查看[成语词典(apiCode=2964)官方指南总目录](https://www.showapi.com/guides/idiom-dictionary-guides-2964)