使用 Firebase 提供的 API 密钥无效

Posted

技术标签:

【中文标题】使用 Firebase 提供的 API 密钥无效【英文标题】:Invalid API Key supplied using Firebase 【发布时间】:2016-09-23 00:16:43 【问题描述】:

我正在使用 Firebase 身份验证来允许用户使用 Facebook 进行注册。我已经从这里采取了所有步骤来实施注册,包括将 GoogleService-Info.plist 添加到我的项目中。

我得到 Facebook 许可屏幕一切正常,但当应用程序点击时

FIRAuth.auth()?.signInWithCredential(credential)  (user, error) in

返回此错误:请求中提供了无效的 API 密钥。

谁能帮我解决这个问题?

谢谢

这是我使用 Facebook 登录的功能代码。

@IBAction func signUpWithFacebook() 

    let fbLogin = FBSDKLoginManager()

    fbLogin.logInWithReadPermissions(["email"], fromViewController:self,  handler: 
        (result, error) -> Void in

        if ((error) != nil) 
            print("Process error")
         else if (result.isCancelled) 
            print("Cancelled");
         else 
            print("Logged in");

            let accessToken = FBSDKAccessToken.currentAccessToken().tokenString
            let credential = FIRFacebookAuthProvider.credentialWithAccessToken(accessToken)
            print(FBSDKAccessToken.currentAccessToken().tokenString)

            FIRAuth.auth()?.signInWithCredential(credential)  (user, error) in
                // ...
                if let user = user
                    print(user.displayName)
                
                else

                    if let error = error 
                        print(error.localizedDescription)
                    
                
            

        
    )

【问题讨论】:

【参考方案1】:

已解决,适用于未来需要该解决方案的任何人。

有时 GoogleService-Info.plist 中缺少 API_KEY,需要添加。

API Key 可以从 Google API Console https://console.developers.google.com/找到

【讨论】:

Hassan,很高兴您的问题得到解决,但我们想调查一下为什么 API 密钥不在您的 plist 中。您能否在我们的support channel 中给我们发一封电子邮件,提及这个 *** 问题、您的 plist 和您的项目 ID? 刚刚观察到配置文件丢失 API_KEY 的相同行为...感谢您找到解决此问题的方法! 我也遇到了这个问题 - 我只是确保一切都设置正确,然后再次生成 GoogleService-Info.plist。第二个是正确的。 Firebase 支持团队正在审核此内容【参考方案2】:

您可以通过在 Firebase 控制台的项目设置部分下再次下载“GoogleService-Info.plist”文件来解决此问题。

确保在新的“GoogleService-Info.plist”上设置了 API_KEY。

【讨论】:

再次下载解决了我的问题...这很奇怪,因为我没有对我的项目进行任何更改。 是的,这也解决了我的问题。很惊讶这个问题还没有解决。无论如何感谢您的解决方案:-) 就像@MXV 所做的一样 :D :D 再次下载它解决了我的问题...这很奇怪,因为我没有对我的项目进行任何更改。

以上是关于使用 Firebase 提供的 API 密钥无效的主要内容,如果未能解决你的问题,请参考以下文章

更改了 Firebase 项目,它给了我错误 [ API 密钥无效。请传递有效的 API 密钥。 ] 身份验证期间

通过 API 创建短链接并获取“API 密钥无效。请传递有效的 API 密钥”

Laravel 提供了无效的 MailChimp API 密钥

SendGrid API 密钥不起作用。 “提供的授权授权无效、过期或撤销”

Spatie/Newsletter:Laravel 5.6 中提供的 MailChimp 无效 MailChimp API 密钥

Firebase.push 失败:第一个参数包含无效密钥 ($$hashKey)