Firebase数据库:路径中的令牌无效

时间:2016-10-18 06:00:01

标签: android firebase firebase-realtime-database token

我的问题是,我收到此错误:     com.google.firebase.database.DatabaseException: Firebase Database error: Invalid token in path,当我更新此代码中的用户节点时:

Map<String, Object> userUpdate = new HashMap<>();
        userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/profile_data/age", age);
        userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/profile_data/email", userEmail);
        userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/profile_data/gender", gender);
        userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/profile_data/name", userName);
        userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/profile_data/photo", "");
        userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/profile_data/video", "");

        userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/chat_data/osPlayerID", "");
        userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/chat_data/name", userName);
        userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/chat_data/photo", "");
        userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/chat_data/video", "");

        userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/status", false);//Set false by default

        FirebaseDatabase.getInstance().getReference().updateChildren(userUpdate).addOnCompleteListener(new OnCompleteListener<Void>() {
            @Override
            public void onComplete(@NonNull Task<Void> task) {

Firebase数据库到此特定节点的规则为:写入和读取时为true。

Json预计会:

{
  $UserEMail: {
     chat_data: {
       name: "",
       osPlayerID: "",
       photo: "",
       video: ""
     },
     profile_data: {
      age: (int),
      email: "";
      gender: (int),
      name: "",
      photo: "",
      video: ""
    },
    status: (boolean)
  }
}

1 个答案:

答案 0 :(得分:6)

问题是,当Firebase不接受点作为节点键的一部分时,我试图插入像email@example.com这样的电子邮件