【问题标题】:Flutter Webview Google OAuthFlutter Webview Google OAuth
【发布时间】:2020-02-19 13:00:15
【问题描述】:

我有一个使用 Webview 的 Flutter 应用程序。此 Webview 的位置是支持 Google 身份验证的外部站点,由于 403 disalowed_useragent 而失败。我知道 Google 不再支持使用嵌入式浏览器的 OAuth 请求,但有人知道解决方法吗?

class CheckOutExternalPage extends StatefulWidget {
  final String url;

  CheckOutExternalPage({Key key, this.url}) : super(key: key);

  @override
  _CheckOutExternalPageState createState() => _CheckOutExternalPageState();
}

class _CheckOutExternalPageState extends State<CheckOutExternalPage> {
  @override
  Widget build(BuildContext context) {
    return WebviewScaffold(
      geolocationEnabled: true,
      withZoom: true,
      withLocalStorage: true,
      withJavascript: true,
      supportMultipleWindows: true,
      url: widget.url,
      appBar: new AppBar(
        title: const Text('Check Out'),
      ),
    );
  }
}

【问题讨论】:

    标签: flutter google-oauth


    【解决方案1】:

    在https://pub.dev/documentation/webview_flutter/latest/webview_flutter/WebView/userAgent.html阅读Api

    所以你必须使用类似的东西

    String useragent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.106 Safari/537.36";
    

    然后webview.userAgent=useragent ;

    【讨论】:

    • 现在我得到这个错误:脚本可能只关闭它打开的窗口
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-11
    相关资源
    最近更新 更多