技术博客
成语详情字段详解:拼音 / 解释 / 出处 / 示例如何呈现给用户

成语详情字段详解:拼音 / 解释 / 出处 / 示例如何呈现给用户

作者: 万维易源
2026-09-03
成语词典字段拼音解释出处
# 成语详情字段详解:拼音 / 解释 / 出处 / 示例如何呈现给用户 > 接口:成语词典(apiCode=2964) · 接入点:成语详情(2964-2) / 随机成语(2964-3) · 是否免费:是 · 请求方式:POST/GET · 返回格式:JSON · 适用人群:前端、全栈、内容产品 · 阅读时间:约 5 分钟 ## 核心要点 - 详情/随机返回五个释义字段:`word`(成语)、`pinyin`(读音)、`explain`(解释)、`derivation`(出处)、`sample`(示例)。 - `explain` 是字面+比喻义,`derivation` 多为古籍出处,`sample` 是用法例句。 - 前端可按「卡片 + 朗读 + 典故展开」呈现,本文给可直接套的模板。 ## Why:拿到字段不等于用得好 接口把拼音、解释、出处、示例都给你了,但怎么排布决定了学习体验。教育类产品尤其需要把「读音、意思、从哪来、怎么用」分层展示,而不是一坨文字。本文拆解每个字段含义并给展示建议。 ## What:字段含义 | 字段 | 含义 | 呈现建议 | |------|------|---------| | `word` | 成语本身 | 标题,大字 | | `pinyin` | 读音(带声调) | 副标题,可配朗读按钮 | | `explain` | 解释(字面义+比喻义) | 正文段落 | | `derivation` | 出处(如《韩非子·五蠹》) | 「典故/出处」折叠块 | | `sample` | 用法示例句 | 「例句」高亮块 | ## How:前端展示模板 ```html <div class="idiom-card"> <h2>{{word}}</h2> <p class="pinyin">{{pinyin}} <button onclick="speak(word)">🔊 朗读</button></p> <p class="explain">{{explain}}</p> <details> <summary>出处</summary> <blockquote>{{derivation}}</blockquote> </details> <p class="sample">例句:{{sample}}</p> </div> ``` ```javascript // 拉详情并填充(id 来自搜索结果) async function renderDetail(id) { const d = await fetch("https://route.showapi.com/2964-2", { method:"POST", headers:{"content-type":"application/x-www-form-urlencoded"}, body:new URLSearchParams({appKey:"YOUR_APPKEY", id}) }).then(r=>r.json()); const b = d.showapi_res_body; document.querySelector(".idiom-card").innerHTML = `<h2>${b.word}</h2><p>${b.pinyin}</p><p>${b.explain}</p><blockquote>${b.derivation}</blockquote><p>${b.sample}</p>`; } ``` ## 返回示例与解析 ```json { "showapi_res_body": { "ret_code": 0, "remark": "查询成功!", "word": "守株待兔", "pinyin": "shǒu zhū dài tù", "explain": "比喻死守经验,不知变通。", "derivation": "《韩非子·五蠹》", "sample": "凡事须主动,不可守株待兔。" } } ``` ## 进阶 / 边界 - **朗读**:用浏览器 `SpeechSynthesis` 或后端 TTS,对 `pinyin`/`word` 发音;中文本地化需指定 `lang="zh-CN"`。 - **多字段缺失**:文档未保证每个成语五字段都齐全,前端对缺失字段做「不展示该区块」降级,避免空白占位。 - **字段稳定性**:释义类字段极少变动,可配合[缓存策略](https://www.showapi.com/guides/idiom-pagination-cache-2964)长期缓存。 ## FAQ **Q:explain 和 derivation 有什么区别?** explain 是「什么意思」(现代释义),derivation 是「从哪来的」(古籍出处)。 **Q:sample 是必有的吗?** 文档未保证每个成语都有 sample,前端应缺失不展示。 **Q:pinyin 带声调吗?** 示例中带声调(如 shǒu zhū dài tù),可直接用于展示与朗读。 **Q:能不能只展示解释不要出处?** 可以,按产品需要取舍;建议至少保留 explain,derivation/sample 作为可折叠补充。 ## 相关能力 / 下一步阅读 - [成语详情:用 id 还是 word 查询?参数用法与避坑](https://www.showapi.com/guides/idiom-detail-id-or-word-2964) - [免费接口下如何设计分页缓存,减少重复调用?](https://www.showapi.com/guides/idiom-pagination-cache-2964) - [儿童成语学习 App 接入指南:查词 + 每日一句 + 测验](https://www.showapi.com/guides/idiom-edu-app-guide-2964) - **本系列共 15 篇**:查看[成语词典(apiCode=2964)官方指南总目录](https://www.showapi.com/guides/idiom-dictionary-guides-2964)