在POST请求中将空数组丢弃到Firebase

时间:2013-03-09 01:39:34

标签: api rest firebase

当尝试使用Firebase REST API将哈希映射推送到列表时,任何具有空数组作为值的键:值对都将被静默删除,例如:

curl -X POST -d '{"name": "Persists", "words": ["what", "is", "this"], "toBeDropped": []}' "https://fbdev.firebaseio.com/channels/example.json?auth=sometoken

Firebase数据结构中的结果:

{
 "random-id": {
    "name": "Persists",
    "words": ["what", "is", "this"]
  }
}

这会导致我们的客户遇到问题,因为在这种情况下,他们希望自己被[]而不是null

1 个答案:

答案 0 :(得分:5)

这实际上是Firebase的预期行为。在内部,Firebase将数组和对象视为相同类型(如果所有键名都是整数,则仅将它们转换为客户端上的数组)。 Firebase还将空对象和null视为同一类型。

结果,您的空数组最终为空。