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

Expo构建APK后无法通过Axios获取API数据的调试求助

调试Expo EAS构建APK的Axios API调用失败问题

1. 排查网络基础问题

  • 确认API地址为公网可访问的域名/IP:模拟器可能走本地代理或内网,真机必须能直接访问公网地址
  • 检查app.json的权限配置,确保添加INTERNET权限:
    {
      "expo": {
        "android": {
          "permissions": ["INTERNET"]
        }
      }
    }
    
  • 切换真机网络(WiFi/移动数据),排除特定网络的访问限制

2. 捕获并查看完整错误信息

在API调用逻辑中添加详细的错误捕获代码,输出所有错误维度:

try {
  const response = await axios.get('你的API地址');
  console.log('API响应:', response.data);
} catch (error) {
  console.log('请求失败详情:', {
    message: error.message,
    responseData: error?.response?.data,
    statusCode: error?.response?.status,
    requestConfig: error?.config,
    errorCode: error.code
  });
}

通过以下方式查看真机日志:

  • 连接真机到电脑,运行adb logcat *:S ReactNative:V ReactNativeJS:V过滤RN相关日志
  • 使用Expo Dev Client的远程日志功能,在真机上直接查看实时输出

3. 验证HTTPS证书有效性

  • 若API使用HTTPS,检查证书是否为公网受信任的正规证书:模拟器可能忽略证书问题,但真机严格校验
  • 测试环境使用自签名证书时,需在app.json配置Android网络安全策略:
    {
      "expo": {
        "android": {
          "networkSecurityConfig": {
            "domainConfigs": [
              {
                "domain": "你的API域名",
                "cleartextTrafficPermitted": true,
                "trustAnchors": [{"certificates": ["你的证书文件.pem"]}]
              }
            ]
          }
        }
      }
    }
    
    注意:正式环境禁止开启cleartextTrafficPermitted,必须使用合法证书

4. 核对环境变量与构建配置

  • 确认EAS构建时注入了生产环境API地址,而非模拟器用的本地地址:检查eas.json的环境变量配置
    {
      "build": {
        "production": {
          "env": {
            "API_URL": "https://生产环境API地址"
          }
        }
      }
    }
    
  • 构建时指定正确的配置文件:运行eas build --profile production

5. 检查API的CORS设置

  • 确认API服务器允许真机所在的域名(或所有域名)发起跨域请求:模拟器可能不受CORS限制,但真机APP会严格校验
  • 用Postman在真机上直接测试API地址,确认是否能正常响应

6. 对比开发与构建环境的配置差异

  • 检查app.json/eas.json中网络相关配置在开发版与构建版的差异,确保无遗漏项
  • 尝试构建开发版APK(eas build --profile development),安装到真机后连接Expo DevTools直接调试API调用过程

内容的提问来源于stack exchange,提问作者Dropati Yadav

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 16:24:57