我正在使用Pyrebase访问我的 Firebase 数据库。我的数据库目前的结构如下:- users - 12345 name: "Kevin" company: "Nike"哪里12345是用户的id,公司是用户所属的公司。我目前正在尝试获取属于 Nike 的所有用户。根据 Pyrebase 文档,做这样的事情应该有效:db.child("users").order_by_child("company").equal_to("Nike").get().val()但我收到错误"error" : "orderBy must be a valid JSON encoded path"。有谁知道为什么会这样?
2 回答
慕容森
TA贡献1853条经验 获得超18个赞
Pyrebase 库有问题。这是问题的链接。
解决方案是在您的应用程序中添加这些代码行。
# Temporarily replace quote function
def noquote(s):
return s
pyrebase.pyrebase.quote = noquote
泛舟湖上清波郎朗
TA贡献1818条经验 获得超3个赞
我设法解决了这个问题,因为我还使用了 rest api 来连接我的 firebase 实时数据库。我将通过示例演示错误所在:
当我不orderBy
使用逗号包装值(子项、键等)和其他查询参数时,改造(我正在使用)给我错误/错误的请求。
这是错误/错误的请求网址:
https://yourfirebaseprojecturl.com/Users.json?orderBy=username&startAt=lifeofkevin
见,无论是orderBy
价值和startAt
价值,在这种情况下,username
和lifeofkevin
,不与逗号包裹,像这样"username"
和"lifeofkevin"
,所以它会返回orderBy
必须是有效的JSON编码的路径。
为了工作,我需要orderBy
用逗号包装我的和其他查询参数,以便 Firebase 返回您想要使用的数据。
这是第二个例子,正确的例子:
https://yourfirebaseprojecturl.com/Users.json?orderBy="username"&startAt="gang"
现在注意,区别?的两个值orderBy
和startAt
包裹用逗号所以现在他们会回到你想要使用的数据。
添加回答
举报
0/150
提交
取消