Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/402.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 向云firestore添加数据而无需获取数据以进行授权_Javascript_Firebase_Google Cloud Firestore - Fatal编程技术网

Javascript 向云firestore添加数据而无需获取数据以进行授权

Javascript 向云firestore添加数据而无需获取数据以进行授权,javascript,firebase,google-cloud-firestore,Javascript,Firebase,Google Cloud Firestore,有没有一种方法可以在具备条件的情况下向cloud firestore中的集合添加数据?例如,我只想在以下情况下向集合添加数据:ownerId==(插入id) 我有它的设置,以便链接可以保存在列表中。为了确保列表的创建者尝试向其添加链接,我当前必须首先获取列表,以确保userId与发送到函数中的userId匹配,然后继续保存链接。是否有任何解决方案可以保存列表而不必在同一功能中获取数据?您的意思是用户将向firestore db添加数据,但需要首先验证用户是否与firestore db匹配,而不必

有没有一种方法可以在具备条件的情况下向cloud firestore中的集合添加数据?例如,我只想在以下情况下向集合添加数据:ownerId==(插入id)


我有它的设置,以便链接可以保存在列表中。为了确保列表的创建者尝试向其添加链接,我当前必须首先获取列表,以确保userId与发送到函数中的userId匹配,然后继续保存链接。是否有任何解决方案可以保存列表而不必在同一功能中获取数据?

您的意思是用户将向firestore db添加数据,但需要首先验证用户是否与firestore db匹配,而不必从firestore获取数据?这可能会有帮助,或者
exports.create = async function(userId, listId, name, link) {   
    const listResult = await listRep.getList(listId)
    if (!listResult.error) {
        if (listResult.list.userId == userId) {
            const result = await linkRep.create(listId, name, link)
            return new Promise(resolve => {resolve(result)})
        } else {
            return new Promise(resolve => {resolve({error: "You can't edit this list"})})
        }
}