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

使用Clerk OAuth登录React Native Expo应用时出现network_error

Expo 51 + Clerk Google OAuth 报 network_error 问题排查方案

已知条件:普通登录注册功能正常,Clerk publishable key配置正确,此前Google OAuth功能正常,近期突然失效,错误信息:

{
     "code": "network_error",
     "clerkRuntimeError": true
}

以下是针对性排查和修复步骤:

  • 检查Clerk与Google Cloud的OAuth配置

    • 登录Google Cloud Console,确认对应OAuth客户端的ID、密钥未过期或被修改,且客户端类型适配Expo应用(选择"iOS"或"Android",或"桌面应用"用于开发测试)
    • 核对Clerk Dashboard中Google OAuth的回调URL,确保与当前Expo项目的scheme完全匹配(例如your-app-scheme://oauth-callback/clerk)
    • 若Google OAuth同意屏幕处于"测试"状态,确认当前测试用户已添加到列表中,未添加的测试用户无法完成授权
  • 验证Expo项目配置

    • 检查app.json/app.config.js中的scheme字段是否正确,且与Clerk配置的回调URL前缀一致
    • 确保WebBrowser.maybeCompleteAuthSession()在App入口文件(如App.tsx)的最顶部调用,避免因组件加载时机延迟导致会话无法完成
    • 执行npx expo start --clear清除Expo缓存,强制加载最新配置
  • 适配Clerk与Expo版本兼容性

    • 查看@clerk/clerk-expo的版本,确认其支持Expo 51
    • 执行npm update @clerk/clerk-expo升级到最新兼容版本,或降级到之前验证可用的版本
  • 排查网络与设备环境

    • 测试设备需能正常访问Google服务,确保网络环境无限制
    • 检查应用的网络权限是否开启,确保App可访问互联网
    • 切换WiFi/移动数据网络,排除单一网络的异常问题
  • 优化代码细节

    • 在useOAuth中显式指定redirectUrl,确保回调地址准确:
      const { startOAuthFlow: startGoogleFlow } = useOAuth({
        strategy: 'oauth_google',
        redirectUrl: Linking.createURL('/oauth-callback'),
      });
      
    • 增强错误捕获,获取更详细的错误信息:
      catch (err) {
        console.error('OAuth错误详情:', err);
        if (isClerkAPIResponseError(err)) {
          console.error('Clerk API错误:', err.errors);
        }
      }
      

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 05:42:39