【发布时间】:2020-09-14 20:24:57
【问题描述】:
想要从 Firebase Cloud Firestore 读取数据。我已经创建了一个项目,并通过设置将我的 Rails (6.0.3) 应用程序添加到 fire store db -> 添加 web 应用程序。这为我提供了包含 firevbase SDK 的脚本标签,以添加到我的 web 应用程序的 body 标签下,我做了所有这些。 我正在尝试按照@https://firebase.google.com/docs/firestore/quickstart?authuser=0#ruby 的说明进行操作。第一条指令如下: ''' 导出 GOOGLE_APPLICATION_CREDENTIALS="path/to/your/keyfile.json" ''' 我已经通过从与我的 firebase 项目关联的服务帐户创建一个密钥来下载此 JSON 文件,该密钥已下载并放置在我的项目树中。但是我不知道在我的 Rails 环境中将导出谷歌信用放在哪里?以前我尝试将其插入 environment/development.rb 但 export 关键字不是 Ruby 语法的一部分。
我已经安装了 cloud-firestore-gem,我一直在努力完成这篇文章,试图将所有东西拼凑在一起How to connect to a Firestore database with Ruby。当我在 rails 控制台中运行它时:
cred = Google::Cloud::Firestore::Credentials.new("path/to/myJsonSerivcesKey.Json")
我收到这条回溯:
Signet::AuthorizationError (Authorization failed. Server message:)
{"error":"invalid_scope","error_description":"Invalid OAuth scope or ID token audience provided."}
我认为这个错误与我在使用服务帐户中的 API 密钥时没有做正确的事情有关,但我不太确定。有关如何更正无效 OAuth 范围以及将导出 GOOGLE_APPLICATIONS+CREDENTIALS 放在何处的任何建议都会很棒。另外我不确定为什么需要将 Firebase SDK 粘贴到应用程序的主体标签中,有人可以解释一下这对应用程序有什么作用吗?
【问题讨论】:
-
我认为这可能会有所帮助:medium.com/@channaly/… 让我知道它是否适合您
标签: ruby-on-rails ruby firebase google-cloud-firestore firebase-console