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

React Native项目初始化npm报错求助:SSL异常但yarn可用

问题原因分析
  • npm缓存或网络配置异常:重置电脑后,npm残留了旧的SSL缓存或代理配置,导致SSL握手过程中出现解密失败;而yarn使用独立的缓存和配置体系,未受影响。
  • npm版本兼容性问题:Node.js 16.16.0自带的npm 8.11.0存在已知的SSL握手兼容性bug,与部分镜像源的SSL配置不匹配。
  • 系统SSL证书缺失/异常:重置电脑后系统根证书未正确更新或安装,npm无法验证镜像源的SSL证书,yarn则因自身证书验证逻辑适配了系统环境而正常工作。
解决方案
  • 清除npm缓存并重置镜像源
    执行以下命令清空缓存并切换到官方npm源:
    npm cache clean --force
    npm config set registry https://registry.npmjs.org/
    
  • 检查并移除代理配置
    先查看当前代理设置:
    npm config get proxy
    npm config get https-proxy
    
    若输出非空,执行命令删除代理:
    npm config delete proxy
    npm config delete https-proxy
    
  • 升级npm到同大版本稳定版
    Node.js 16.16.0自带的npm 8.11.0存在网络bug,升级到npm 8.x分支的最新稳定版:
    npm install -g npm@8.19.4
    
  • 配置npm使用系统根证书
    找到系统根证书路径(Windows:C:\Windows\System32\certificates\root;macOS:/System/Library/Keychains/SystemRootCertificates.keychain),执行命令让npm信任系统证书:
    npm config set cafile "系统根证书路径"
    
  • 临时禁用SSL验证(仅用于测试,不推荐长期使用)
    执行命令关闭严格SSL验证,快速排查是否为证书问题:
    npm config set strict-ssl false
    
    测试完成后记得改回:
    npm config set strict-ssl true
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 05:45:38