React项目调用RapidAPI返回401未授权错误该如何解决?
问题原因
你在CryptoApi.js中的createRequest函数存在拼写错误:将请求配置项的headers写成了单数形式header,导致鉴权请求头没有被正确挂载到Redux Toolkit Query发出的请求上,服务端无法读取到x-rapidapi-host和x-rapidapi-key参数,因此返回401未授权错误。
修复方案
直接修改CryptoApi.js中的createRequest函数代码即可:
// 原错误写法:const createRequest = (url) => ({ url, header: cryptoApiHeaders }); // 修正为如下写法 const createRequest = (url) => ({ url, headers: cryptoApiHeaders });
补充排查项
如果修改后仍然报错,可以按以下顺序确认:
- 你填写的
x-rapidapi-key值和正常运行的axios示例中使用的key完全一致,无多余空格、漏写字符的问题 - 确认RapidAPI后台中当前key有权限访问
/coins接口,部分接口的不同路径需要单独申请访问权限 - 在浏览器开发者工具的网络面板中查看实际发出的请求,确认两个鉴权头参数已经被正确携带
内容的提问来源于stack exchange,提问作者Seeker
相关产品推荐
相关产品推荐

