首页 > 解决方案 > Firebase 无效的键名,尽管我使用了正确的 ASCII 符号

问题描述

我想导入一个包含三个根节点的 json 文件accounts, conversations, groups. 当我导入此文件时,firebase 给了我错误:

JSON 数据或键值无效。键值不能包含 $ # [ ] / 或 。

经过反复试验,我得出的结论是,conversations作为键名从 firebase 返回无效。我已经测试过自己创建所有节点并导入相应的值,accountsgroups正确导入但conversations仍然给我错误。我检查了 ASCII 符号,它们是正确的。我尝试在另一个项目中导入整个 json 文件,它成功导入,没有错误。所以这整个问题有点奇怪。

json 文件如下所示:

{
  "accounts":{...},
  "conversations":{...},
  "groups":{...}
}

对话样本之一:

{
"accounts": {
    "05BTRzXhLqMjVW3qc0ghBUWshZU2": {
        "age": "2005",
        "conversations": {
            "9GeTLIh4FnXZNl130bH3VJ4jVgx2": {
                "conversationId": "-LFUFQh-qNfhb-8ejxx_",
                "messagesRead": 2
            },
            "MwGQSVKpsINWyuFN4jqXtUe61gs2": {
                "conversationId": "-LFUFVc3KUzGeKB7ZTz_",
                "messagesRead": 6
            }
        },
        "description": "Hellå",
        "email": "julia_003@snaptive.se",
        "friends": ["9GeTLIh4FnXZNl130bHVgx2", "BoGkg201ncPzJNSsdanH63Rl1", "Jze43jVHCEeRmQtk3NwKpny1KxZ2", "KFFX4MLVdxQ0NVYPAqAXAbqUwzI2", "MwGQSVKpsINWyuFN4jqXtUe61gs2", "ShCHny6aAFTwjStKEjbHCEKPeKn2", "YMEk03V2wQdL0F6ksiUvD2ZQeS23", "iOWxILLPR6esVBlGp18YXIl2", "o3FUGu4iZrOWyXz3NfEB2e8zclj1", "sGhQzFEavLXOSM9LYRpVezhLMx72", "tM4W1z6onvSt6Zr28PdvrOzroAp1", "y2GF7WP1NQQ3X5hT5esYsHx8yj23"],
        "groups": {
            "-LFUFBE4wYiEETrdYYug": {
                "messagesRead": 1
            }
        },
        "img": "assets/images/profile.png",
        "introMeddelande": "0",
        "name": "Jullebulle",
        "provider": "Email",
        "pushToken": "ebL3o5QL73E:APAz4NMbCPOTmBbi1bGaLIyyIcxSSaRwvsR4YgGt2a7lHe5fsREuWKttPHvK0RSljaw0GH99ledEQwkM3HhfFCp9rPrCgEvM6q67X3CQRdoL11zpy1z2KTFdrZrD-BX1tI8C7g9eHaXmQt65j4Eow",
        "titel": "Elev",
        "userId": "05BTRzXhLqMjVW3qc0ghBUWshZU2",
        "username": "Julia_003"
    }
},
"conversations": {
    "-LA8fg4lUbLtGYBtR47Z": {
        "dateCreated": "Sun Apr 15 2018 16:21:36 GMT+0200 (CEST)",
        "messages": [{
            "avatar": "assets/images/profile.png",
            "date": "Sun Apr 15 2018 16:21:36 GMT+0200 (CEST)",
            "message": "Hej haris",
            "sender": "mJfUIr4eUccmtP1RhCGDH6UCr7W2",
            "type": "text"
        }, {
            "avatar": "assets/images/profile.png",
            "date": "Sun Apr 15 2018 16:21:47 GMT+0200 (CEST)",
            "sender": "mJfUIr4eUccmtP1RhCGDH6UCr7W2",
            "type": "image",
            "url": "link to firestore"
        }, {
            "date": "Sun Apr 15 2018 16:22:22 GMT+0200 (CEST)",
            "message": "Hej apple",
            "sender": "wIBBNjO8msR1zza8K6dYyTFdDWr1",
            "type": "text"
        }],
        "users": ["mJfUIr4eUccmtP1RhCGDH6UCr7W2", "wIBBNjO8msR1zza8K6dYyTFdDWr1"]
    }
},
"groups": {
    "-L3beONzO7Py_MhMBxuJ": {
        "dateCreated": "Wed Jan 24 2018 11:14:41 GMT+0100 (CET)",
        "description": "Jobb relaterat",
        "img": "assets/images/intern.jpg",
        "members": ["9GeTLIh4FnXZ0bH3VJ4jVgx2", "BoGkg2cEzJNSsdanH63Rl1", "Jze43jVHCEeRmQtk3NasdasdwKpny1KxZ2", "KFFX4MLVdxQ0NVYPAqAXAbqUwzI2", "KK6dLmN2UWgqWB90ixJCjEV2", "MwGQSVKpsINWyuFN4jqXt", "ShCHny6aAFTwjStKEjbHCE", "YMEk03V2wQdL0F6ksiUvD2ZQ", "iOWxILLPR6esVBlk5O7Gp18YXIl2", "o3FUGu4iZrOWyXz3NfEB2e8zclj1", "sGhQzFEavLXOSM9LYRpVezhLMx72", "tM4W1z6onvSt6Zr28PdvrOzroAp1", "y2GF7WP1NQQ3X5hT5esYsHx8yj23"],
        "messages": [{
            "date": "2018-04-16T16:39:08.000Z",
            "message": "Fresh",
            "sender": "wIBBNjO8msR1zza8KYyTFdDWr1",
            "type": "text"
        }, {
            "avatar": "lin to firestore",
            "date": "2018-04-17T04:56:13.000Z",
            "message": "Allt e redo nu",
            "sender": "o3FUGu4iWyXz3NfEB2e8zclj1",
            "smeknamn": "Cem Celepli Atci",
            "type": "text"
        }],
        "name": "Intern Chatt"
    }
}
}

这些值看起来几乎相同。

标签: jsonfirebasefirebase-realtime-databaseimportascii

解决方案


推荐阅读