我有一个从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数据库路径不得包含“。”,“#”,“ $”,“ [”或“]”
任何人都知道这里发生了什么吗?我将不胜感激。谢谢!
答案 0 :(得分:0)
好吧,问题似乎出在$符号而不是点上。句点在那里指示句子的结尾,但是“ Firebase数据库路径不得包含'。','#','$','['或']'”使我感到困惑,并让我想到点是问题。然后我看到了给定ID中的$,它就在那里,因为我添加了一些虚拟数据。