gpt4 book ai didi

javascript - 无法使用Google云功能将数据保存到Firestore

转载 作者:行者123 更新时间:2023-12-02 21:08:02 25 4
gpt4 key购买 nike

我试图在每次执行云函数时在firestore数据库中添加一条记录,但是该函数仅在部署更改的代码时才向数据库添加一条记录,并且当稍后执行该函数时,它不会添加任何内容,这是我正在使用的代码,我不了解 Node.js,第一次使用它。请帮助指出代码有什么问题,以及如何更改它以在对谷歌云功能的每个 HTTP 请求上添加新行。

/**
* Responds to any HTTP request.
*
* @param {!express:Request} req HTTP request context.
* @param {!express:Response} res HTTP response context.
*/

const admin = require('firebase-admin');
const functions = require('firebase-functions');

admin.initializeApp(functions.config().firebase);

let db = admin.firestore();
let FieldValue = require('firebase-admin').firestore.FieldValue;
let data = {
name: 'Los Angeles',
state: 'CA',
country: 'USA',
timestamp: FieldValue.serverTimestamp()
};
let result ="success";
(async () => {
// Add a new document in collection "cities" with ID 'LA'
let setDoc = await db.collection('cities').add(data).then((cityRef) => {
cityRef.get()
.then(doc => { result = "SUCC";/* do stuff */ })
.catch(err => { result = "FAI";/* error! */ });
});
})();

exports.helloWorld = (req, res) => {

let message = req.query.message || req.body.message || 'Hello World!-' || result || setDoc;
res.status(200).send(message);
};

最佳答案

您的所有数据库代码都位于该函数的全局范围内。那根本不是你想要的。尝试将代码放入 Cloud Function 触发器内部,以便在调用函数时执行。

关于javascript - 无法使用Google云功能将数据保存到Firestore,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61175692/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com