我想使用 firebase 实时数据库创建一个聊天应用程序,我已经拥有自己的服务器以及我自己的用户和收件人身份验证。
所以基本上我想做的是:
我希望我的服务器能够生成房间及其房间密钥,因此仅向我共享密钥的人可以访问房间,进行读写
也许流程是这样的
1. 服务器使用 REST API 创建一个 POST 到此 url
curl -X PUT \
https://example-chat-92682.firebaseio.com/order-test.json \ -d
'{
"UB8Hdazo834-4760": {
"secret": "secret123"
}
}'
所以会生成如下结构
- order-test
- UB8Hdazo834-4760
secret: "secret123",
2.然后我就发聊天室https://example-chat-92682.firebaseio.com/order-test/UB8Hdazo834-4760.json https://example-chat-92682.firebaseio.com/order-test/UB8Hdazo834-4760.json对用户
我会像这样以 json 形式发送它们
"room": "https://example-chat-92682.firebaseio.com/order-test/UB8Hdazo834-4760.json",
"secret": "secret123"
3. 用户收到payload并使用它来使用他们的ios或android加入聊天,所以最终的结构将是这样的
- order-test
- UB8Hdazo834-4760
secret: "secret123",
- chat
- Kifeisufsu23r
name: "Bob",
message: "How you doin?"
- Ki4324ffs3fIF
name: "Alex",
message: "I am fine"
问题是,如何制定 Firebase 数据库规则来创建读写验证?
我已经看过文档,我无法使用 Firebase 身份验证,因为我有自己的身份验证并且无法控制身份验证(不同的微服务)
秘密将自动生成,因此我无法对数据库规则进行硬编码
如果你们对我的数据结构有任何反馈,我非常欢迎