在Firebase查询的末尾添加了一个点

时间:2019-11-01 13:31:28

标签: firebase firebase-realtime-database flutter

我有一个从Firebase获取的收藏夹ID列表。 列表的第一个正常获取,问题在于在第二个ID上,“东西”在字符串的末尾添加了一个点,变成“ Vd $ r367Tyuezjphk4699sd”。来自“ Vd $ r367Tyuezjphk4699sd”

我使用的方法是:

 _getFavorites(favorites) async {
    for (var i = 0; i < favorites.length; i++) {
      var id = favorites[i];
      print('HERE ID ID ID $id');
      final dbRef = FirebaseDatabase.instance.reference().child('favorites').child(id);
      var snapshot = await dbRef.once();

印刷品(“ HERE ID ID ID $ id”);给出正确的ID:

  

此处的ID ID ID Vd $ r367Tyuezjphk4699sd

,然后下一个输出行是:

  

E / MethodChannel#plugins.flutter.io / firebase_database(2756979):无法执行   处理方法调用   E / MethodChannel#plugins.flutter.io / firebase_database(2756979):   com.google.firebase.database.DatabaseException:无效的Firebase   数据库路径:收藏夹/ Vd $ r367Tyuezjphk4699sd。

     

Firebase数据库路径不得包含“。”,“#”,“ $”,“ [”或“]”

任何人都知道这里发生了什么吗?我将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:0)

好吧,问题似乎出在$符号而不是点上。句点在那里指示句子的结尾,但是“ Firebase数据库路径不得包含'。','#','$','['或']'”使我感到困惑,并让我想到点是问题。然后我看到了给定ID中的$,它就在那里,因为我添加了一些虚拟数据。