如何从fetch API返回的响应对象中提取指定key的字段值
解决方案
你写的代码有两处错误:
- 接口地址后拼接的
?get.value是无效参数,该接口不支持通过URL传参指定返回单个字段,不需要加这段内容 - 接口返回的是标准JSON格式的单条随机词条对象,不是纯文本形式的词表,不需要用
response.text()读取后按换行拆分、生成随机索引抽词——每次调用接口本身就会返回一个随机词条,直接把响应解析为JS对象后读取word属性就能拿到你要的值。
修正后的可直接运行的代码:
const getWord = async function () { const response = await fetch("https://api.dicionario-aberto.net/random"); // 把响应解析为JSON对象 const wordData = await response.json(); // 直接取word字段值 const word = wordData.word.trim(); placeholder(word); };
补充:如果你是误以为接口返回全量词表才写了拆分换行、随机取词的逻辑,这个认知是错的,该接口单次请求仅返回1个随机词条的结构化数据,不需要额外做随机抽取操作。
内容的提问来源于stack exchange,提问作者CarlosP
相关产品推荐
相关产品推荐

