这个问题与here上进行的讨论有关。
我需要使用Firebase Cloud Function通过解析来解析数组中的URL。与其在客户端上遍历URL(可能在此数组中可能包含数百个项目)并向该函数发出单独的请求,不如将整个数组存储在Firestore中,将集合的ID传递给该函数,获取服务器上的阵列,进行遍历并执行一些操作,然后使用新的ID将其保存回Firestore并使用该ID响应回客户端,以便其可以使用/销毁,或者仅响应新的变异数组(不确定我要使用哪一个)。
似乎没有一种“首选”的方式使用Firebase存储阵列,因为通常认为它是邪恶的,但是,如果我不打算长时间保留数据怎么办?
答案 0 :(得分:0)
我知道了。将其分配给obj并将其传递给Firestore,而不只是将其作为数组传递。
const arr = ['url1', 'url2', 'url3'];
到
const obj = {
arr: ['url1', 'url2', 'url3']
}
答案 1 :(得分:0)
我建议将数组数据写为类似Java的列表:
myDoc.put("urls", Arrays.asList("url1", "url2", "url2"));
这将导致
urls
0: "url1"
1: "url2"
2: "url3"