flutter_facebook_auth:提供的身份验证凭据格式错误或已过期

Posted

技术标签:

【中文标题】flutter_facebook_auth:提供的身份验证凭据格式错误或已过期【英文标题】:flutter_facebook_auth: The supplied auth credential is malformed or has expired 【发布时间】:2021-07-08 08:56:21 【问题描述】:

我正在尝试使用 flutter_facebook_auth 3.3.2+2 包和 firebase_auth 1.0.3 进行 facebook 登录,我基本上是从他们的文档 https://facebook.meedu.app/#/firebase-auth 复制并粘贴代码

import 'package:firebase_auth/firebase_auth.dart';
import 'package:flutter_facebook_auth/flutter_facebook_auth.dart';

Future<UserCredential?> signInWithFacebook() async 
  final LoginResult result = await FacebookAuth.instance.login();
  if(result.status == LoginStatus.success)
    // Create a credential from the access token
    final OAuthCredential credential = FacebookAuthProvider.credential(result.accessToken!.token);
    // Once signed in, return the UserCredential
    return await FirebaseAuth.instance.signInWithCredential(credential);
  
  return null;

我尝试使用它登录,但是当它下降到代码 await FirebaseAuth.instance.signInWithCredential(credential); 它弹出错误:E/flutter (23237): [ERROR:flutter/lib/ui/ui_dart_state.cc(186)] Unhandled Exception: [firebase_auth/invalid-credential] The supplied auth credential is malformed or has expired. [ Remote site 5XX from facebook.com for VERIFY_CREDENTIAL ]

我已经检查了所有的应用程序 ID、应用程序密码、回调 url、包名是否匹配, 我不知道我做错了什么。请问有人能告诉我发生了什么吗?

【问题讨论】:

***.com/questions/54922944/…你试过这个吗? 是的,在我发布之前我已经尝试了所有的东西 您检查过 API 密钥和秘密吗? github.com/FirebaseExtended/flutterfire/issues/… 这个 github 的作品,非常感谢你的队友! 【参考方案1】:

可能有多种原因: Choosing wrong app type in Facebook console instead of "Build Connected Experiences"

还有:

错误的包/应用程序/包 ID/名称 错误的 API 密钥和机密

【讨论】:

以上是关于flutter_facebook_auth:提供的身份验证凭据格式错误或已过期的主要内容,如果未能解决你的问题,请参考以下文章

Flutter Firebase auth facebook无法正常工作

flutter video_player 在发布模式下不播放视频

服务提供者框架模式

错误:无法解析提供的 SSML。提供的文本无效 SSML

没有提供者的服务提供者接口

为啥 TypeORM 需要提供 OneToMany 的反面,但不需要提供 ManyToOne 的反面?