【问题标题】:Adding Authentication with Facebook and Google in Flutter app without Firebase在没有 Firebase 的 Flutter 应用中添加 Facebook 和 Google 身份验证
【发布时间】:2019-06-04 02:55:32
【问题描述】:

我正在开发一个 Flutter 应用,需要在我们的应用登录页面中包含 Facebook 和 Google 登录选项。我没有使用 Firebase,而是使用 MySQL 数据库来存储和检索用户数据。

我正在寻找在没有 Firebase 的情况下在我的颤振应用中添加 FB 和 Google 身份验证。我找不到任何关于此的文章。它总是在任何地方使用 Firebase。

按照教程完成后,我已经在 FB Developer 控制台中注册了我的应用程序,但我不确定那里的“OAuth 重定向 URL”字段中会放什么。

目前,我正在使用 xampp 服务器和 nodeJS 进行服务器端处理。下面是我在单击按钮时调用的代码。我正在使用插件进行 Facebook 身份验证(如果此插件专门用于 Firebase,请告诉我)。

void initiateFacebookLogin() async {
    var facebookLogin = FacebookLogin();
    facebookLogin.loginBehavior = FacebookLoginBehavior.webViewOnly;
    print("Inside fb login");
    var facebookLoginResult = await facebookLogin
        .logInWithReadPermissions(['email', 'public_profile']);
    switch (facebookLoginResult.status) {
      case FacebookLoginStatus.error:
        print("Error");
        onLoginStatusChanged(false);
        break;
      case FacebookLoginStatus.cancelledByUser:
        print("CancelledByUser");
        onLoginStatusChanged(false);
        break;
      case FacebookLoginStatus.loggedIn:
        print("LoggedIn");

        var graphResponse = await http.get(
            'https://graph.facebook.com/v2.12/me?fields=name,first_name,last_name,email,picture.height(200)&access_token=${facebookLoginResult.accessToken.token}');

        var profile = json.decode(graphResponse.body);
        print(profile.toString());

        onLoginStatusChanged(true, profileData: profile);
        break;
    }
  }

非常感谢任何帮助或文章。

问候, RSM

【问题讨论】:

  • 有效 OAuth 重定向 URI 字段仅与 Web 登录相关。如果您正在创建原生移动应用程序,则它没有相关性。
  • pub 包 google_sign_in 在没有 Firebase 的情况下工作:pub.dartlang.org/packages/google_sign_in

标签: facebook-graph-api flutter facebook-authentication


【解决方案1】:

如 cmets 中所述,Facebook 和 Google 登录都可以在没有 Firebase 的情况下工作。 Flutter google_sign_in 包有一个示例代码,您可以尝试here

【讨论】:

    猜你喜欢
    • 2022-01-11
    • 2021-11-01
    • 1970-01-01
    • 2021-03-22
    • 2018-02-24
    • 1970-01-01
    • 2019-03-27
    • 2020-10-21
    • 1970-01-01
    相关资源
    最近更新 更多