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

基于Flutter解决googlesapi_auth的loopback flow错误方案咨询

基于Flutter解决Google禁用loopback flow导致googleapis_auth认证失败的方案咨询

我想咨询是否有基于Flutter的解决方案,解决因Google禁用loopback flow,导致使用googleapis_auth包认证Google APIs时出现的错误。

背景信息

  • 我的Flutter应用需向Google Drive上传和下载文件,使用了googleapis、googleapis_auth和url_launcher三个包。
  • 通过googleapis_auth包的clientViaUserConsent()函数获取已认证的HTTP client(并缓存access token供后续复用)。
  • 借助该HTTP client,使用googleapis包的构建向Google Drive发起文件上传/下载请求。
  • 调用clientViaUserConsent()时,传入从Google Cloud Console获取的OAuth client id及所需的Google Drive scopes。
  • clientViaUserConsent()的工作机制:第三个参数传入回调函数,当用户需认证时,该函数接收授权表单URL,我通过url_launcher包的launchUrl()启动该URL;认证成功后,函数才会返回所需的已认证HTTP client实例。

示例代码

var client = await clientViaUserConsent(
  clientId,
  scopes,
  (String urlConsentForm) async {
    await launchUrl(Uri.parse(urlConsentForm));
  },
);

该代码在2022年前可正常运行,但上周使用时出现了loopback flow错误。查阅文档得知需使用google_sign_in包,但该包无法返回已认证HTTP client,我希望找到无需重构现有代码的方案,具体希望继续使用googleapis的Dart构建,而非Google API规范的REST构建。恳请各位提供解决方案,万分感谢。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 09:55:33