【问题标题】:upload .json file to firebase database using python使用python将.json文件上传到firebase数据库
【发布时间】:2020-08-05 22:53:03
【问题描述】:

我想将整个 JSON 文件上传到我的 Firebase 数据库,但我无法让它运行。 我是 Python 和 Firebase 的新手。

这是我目前的代码:

import firebase_admin
from firebase_admin import credentials
from firebase_admin import db
import json
import requests
from pprint import pprint



cred = credentials.Certificate("path/to/serviceAccountKey.json") 
firebase_admin.initialize_app(cred)



with open ('/Users/name/Desktop/Test.json') as data_file: data = json.load(data_file)
jsondata = json.dumps('/Users/name/Desktop/Test.json')



requests.put(url="https://myapp.firebaseio.com/", json= jsondata)

我收到一个错误:

【问题讨论】:

    标签: python json firebase firebase-realtime-database firebase-admin


    【解决方案1】:

    执行实际写入操作的代码:

    requests.put(url="https://myapp.firebaseio.com/", json= jsondata)
    

    此代码不以任何方式使用 Admin SDK,而是直接写入 Firebase 实时数据库的 REST API。


    如果您想使用 REST API 编写代码,这是可能的,但您需要:

    1. 确保您的 REST 调用经过身份验证,如 authenticating REST requests 上的文档中所示。

    2. 使用以 .json 结尾的 URL 以确保您的调用最终到达 REST API。所以:

       requests.put(url="https://myapp.firebaseio.com/.json", json= jsondata)
      

      是的,网址末尾的/.json是正常的。


    或者,您可以继续使用 Admin SDK 写入数据,但在这种情况下,您需要读取 JSON 并将其解析为代码,并将其作为JavaScript 对象,如saving data with the Admin SDK 上的文档所示。

    【讨论】:

    • 所以我需要实现 REST API(请求)并且它应该可以工作?
    • 您主要需要选择要么使用 REST API Admin SDK。你现在混合两者的方式是行不通的。我在答案的其他两个部分中解释了这两个选项的含义。
    • 很高兴听到@adri567!
    猜你喜欢
    • 2021-11-12
    • 1970-01-01
    • 1970-01-01
    • 2012-06-09
    • 1970-01-01
    • 1970-01-01
    • 2021-01-31
    • 1970-01-01
    • 2018-07-06
    相关资源
    最近更新 更多