Axios GET请求返回响应结构异常 与Postman测试结果不一致
问题原因
你请求错API版本了,和Axios没有关系,也不存在响应内容丢失的问题:
- 你在Postman里测试的是
v2版本的接口,返回结构自然是你看到的带meanings数组、每个元素包含partOfSpeech、definitions字段的格式 - 你代码里写的接口前缀是
v1版本,v1和v2版本的接口响应结构本身就不兼容:v1返回的meaning字段是对象,直接把noun、verb这类词性作为键,对应的值就是定义数组,天生没有partOfSpeech字段。
修复方案
把代码里接口地址的版本号从v1改成v2即可,修改对应代码行:
// 原代码写的是v1,修改为v2 var dict_URL = 'https://api.dictionaryapi.dev/api/v2/entries/en/';
补充提示
改完后注意,v2接口返回的整体结果是数组,你需要取数组第一个元素的meanings字段,才能拿到和Postman中一致的结构。另外你当前写的catch逻辑直接返回error对象,后续接口出问题很难排查,建议改成打印错误详情后再做后续处理,能省很多调试时间。
内容的提问来源于stack exchange,提问作者François Souza
相关产品推荐
相关产品推荐

