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

Mac M1上新搭建Expo React Native项目启动遇证书链错误求助

解决Expo React Native项目启动时的自签名证书FetchError问题

核心原因

公司网络环境中的自签名根证书未被系统或Expo CLI信任,导致请求https://api.expo.dev时证书链验证失败。NODE_TLS_REJECT_UNAUTHORIZED=0失效是因为Expo CLI的部分请求逻辑不遵循该环境变量。

分步解决办法

1. 信任公司自签名根证书(优先推荐)

  • 打开「钥匙串访问」应用,导入公司IT提供的自签名根证书文件
  • 找到导入的证书,右键选择「显示简介」,切换到「信任」标签
  • 将「使用此证书时」设置为「始终信任」,输入系统密码确认
  • 重启终端和Expo CLI,重新执行npx expo start

2. 配置Node.js使用公司CA证书

如果有单独的CA证书文件,通过环境变量让Node识别:

  • 临时生效:启动项目前在终端执行
    export NODE_EXTRA_CA_CERTS=/绝对路径/到/公司ca证书.pem
    npx expo start
    
  • 永久生效:将上述export命令添加到~/.zshrc(M1 Mac默认Shell为zsh),执行source ~/.zshrc生效后再启动项目

3. Node/npm版本降级(可选但推荐)

Node v23为开发预览版,存在兼容性风险,建议切换到LTS版本:

  • 使用nvm管理版本,安装Node v20 LTS:
    nvm install 20
    nvm use 20
    
  • 重新安装项目依赖:rm -rf node_modules package-lock.json && npm install
  • 再次尝试启动项目

4. 代理与缓存排查

  • 如果公司使用代理,设置代理环境变量:
    export HTTP_PROXY=http://代理地址:端口
    export HTTPS_PROXY=http://代理地址:端口
    
  • 强制清除Expo缓存启动:
    npx expo start -c
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 17:20:54