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

Flutter中使用FlutterWebAuth2无响应,疑callbackUrlScheme配置错误求助

FlutterWebAuth2 无法接收Kakao授权响应的解决办法

核心问题分析

你用http作为callbackUrlScheme是错误的——http/https是通用网络协议,系统无法识别将这类回调路由到你的Flutter应用,这是收不到响应的主要原因。

具体修复步骤

1. 更换自定义回调Scheme

选择一个专属的自定义Scheme(比如kakao-auth-app,避免和其他应用冲突),同时修改重定向URI:

Future<void> signIn() async {
  final url = Uri.https('kauth.kakao.com', '/oauth/authorize', {
    'client_id' : '7f8c9995a36f55554348032c83b16b96',
    // 替换为自定义Scheme开头的重定向URI
    'redirect_uri' : 'kakao-auth-app://oauth/callback',
    'response_type': 'code',
  });

  final result = await FlutterWebAuth2.authenticate(
      url: url.toString(), 
      // 这里填自定义的Scheme,不要带://
      callbackUrlScheme : "kakao-auth-app");

  print(result);
  final body = Uri.parse(result).queryParameters;
  print(body);
}

2. 在Kakao开发者后台配置合法重定向URI

登录Kakao开发者平台,找到你的应用,在「产品」→「Kakao Login」→「重定向URI」中,添加刚才的kakao-auth-app://oauth/callback,保存配置。

3. 配置Flutter各平台的Scheme支持

Android端

打开android/app/src/main/AndroidManifest.xml,在<activity>标签内添加如下intent-filter:

<intent-filter>
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.BROWSABLE" />
    <!-- 匹配自定义Scheme -->
    <data android:scheme="kakao-auth-app" />
</intent-filter>

iOS端

打开ios/Runner/Info.plist,添加以下配置:

<!-- 允许应用处理自定义Scheme -->
<key>CFBundleURLTypes</key>
<array>
    <dict>
        <key>CFBundleURLSchemes</key>
        <array>
            <string>kakao-auth-app</string>
        </array>
    </dict>
</array>
<!-- 允许应用打开Kakao的授权页面 -->
<key>LSApplicationQueriesSchemes</key>
<array>
    <string>kakao</string>
    <string>kakaotalk</string>
</array>

4. 额外检查点

  • 确认client_id是Kakao应用的正确REST API密钥
  • 测试前重启Flutter应用和模拟器/真机,确保配置生效
  • 如果仍有问题,检查设备是否禁用了应用的浏览器跳转权限

内容的提问来源于stack exchange,提问作者씨마스터300

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 22:35:10