【发布时间】: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