You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native安卓API请求仅调试器开网络检查时生效,iOS运行正常

问题根因

该问题核心是安卓端React Native默认网络请求的请求头不符合后端API的安全校验规则:React Native Debugger开启网络检查功能后会替换全局XMLHttpRequest实现,自动补全符合规范的请求头字段,因此请求可正常通过校验;iOS端RN的默认网络请求头本身符合后端规则,因此无异常。

解决方案

你可以按照以下优先级排查修复:

  • 统一配置User-Agent字段
    安卓端RN默认的User-Agent格式和浏览器、iOS端差异极大,绝大多数CDN、WAF的安全规则会直接拦截格式异常的UA请求,你可以通过Axios全局配置统一UA:
    // 可替换为符合你业务场景的标准UA
    axios.defaults.headers.common['User-Agent'] = 'Mozilla/5.0 (Linux; Android 13; SM-G998B) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Mobile Safari/537.36';
    
  • 补全Origin/Referer字段
    部分后端API会校验请求来源,安卓端RN默认不会携带Origin、Referer字段,你可以在Axios请求拦截器中统一添加:
    axios.interceptors.request.use((config) => {
      // 替换为你业务对应的合法域名
      config.headers['Origin'] = 'https://your-business-domain.com';
      return config;
    });
    
  • 排查网络安全配置
    如果你的请求使用HTTP明文协议,需要在安卓工程res/xml/network_security_config.xml中添加对应域名的明文访问许可,也可直接升级为HTTPS协议规避相关校验限制。

内容的提问来源于stack exchange,提问作者ajay kolekar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 05:39:06