Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/473.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法将数字设置为文档路径存储_Javascript_Firebase_Google Cloud Firestore_Google Cloud Functions - Fatal编程技术网

Javascript 无法将数字设置为文档路径存储

Javascript 无法将数字设置为文档路径存储,javascript,firebase,google-cloud-firestore,google-cloud-functions,Javascript,Firebase,Google Cloud Firestore,Google Cloud Functions,我制作了一个从端点获取用户的函数,我成功地检索到了用户id,id就是这个 1,2,3,4,5,6,7,8,9,10 现在,我希望这些id是存储数据的文档路径,我已经这样做了 for (var i = 0; i < jsonresponse.length; i++) { var obj = jsonresponse[i]; var docid = obj.id db.collection("users").doc(docid).set(obj) } 也许您可以采用以下方法将用

我制作了一个从端点获取用户的函数,我成功地检索到了用户id,id就是这个

1,2,3,4,5,6,7,8,9,10
现在,我希望这些id是存储数据的文档路径,我已经这样做了

for (var i = 0; i < jsonresponse.length; i++) {
  var obj = jsonresponse[i];
  var docid = obj.id
  db.collection("users").doc(docid).set(obj)
}

也许您可以采用以下方法将用户数据写入firebase,方法是首先通过与所需模式匹配的文档路径获取目标文档的.set,然后在文档引用上调用.set:

for (const obj of jsonresponse) {

  /* 
  Obtain target document ref from path that is obj id, relative to collection type 
  */
  db.ref(`users/${ obj.id }`).set(obj);
}

如果您有一个ID为的数组,只需执行以下操作:

jsonresponse = [1,2,3,4,5,6,7,8,9,10]

for (var i = 0; i < jsonresponse.length; i++) {
  var obj = jsonresponse[i];
  var docid = obj.id
  db.collection('users').doc(""+docid).set(obj);
}

你是如何测试的?可能是邮递员或其他人正在以文本形式发送json

记录docid的值。当发生错误时,这正是您所期望的吗?docid的值是多少?是的,docid从1注销到10,只是numbersEndpoint:添加了一个输出的图像可能是这样的?不,但我不需要,因为如果我用任何字符串更改文档中的obj.id,它将创建并推送数据,而不会出现问题
jsonresponse = [1,2,3,4,5,6,7,8,9,10]

for (var i = 0; i < jsonresponse.length; i++) {
  var obj = jsonresponse[i];
  var docid = obj.id
  db.collection('users').doc(""+docid).set(obj);
}