2017-04-20 33 views
0

我正在使用Firebase服务器时间戳作为节点名称在Firebase中添加新节点。它崩溃并给出这个错误“终止应用程序由于未捕获的异常InvalidPathValidation',原因:'(孩子:)必须是非空字符串,不包含'。' '#''$''['或']''“。这里是我的代码在使用swift在Firebase中添加新节点时发生崩溃3

let kFirebaseServerValueTimestamp = [".sv":"timestamp"] 
      let serverTimestamp = "sosLog" + String(describing: kFirebaseServerValueTimestamp) 
      FIRDatabase.database().reference().child(serverTimestamp).setValue(["residentUid":self.user_uid,"name":self.user_name, "timestamp": [".sv": "timestamp"], "status": "SOS" ]){ 

    } 

这是我的db结构。所以我想创建一个名为sosLog1234567456的节点,就像admin,billingdate节点一样。 enter image description here

回答

0

Firebase有一些密钥限制。创建符合以下规则的所有者密钥。

如果你创建自己的密钥,它们必须是UTF-8编码,一个 最大的768个字节就可以了,不能包含。,$,#,[,],/,或ASCII 控制字符0-31或127.

+0

我明白了你的意思,但我没有弄清楚我的代码有什么问题? – manku

相关问题