У меня есть облачная функция firebase (запрос http), в которой я хочу обновить документ в своей базе данных firestore
const functions = require('firebase-functions')
const admin = require('firebase-admin');
admin.initializeApp();
exports.webhook = functions.https.onRequest(async (req, res) => {
const { id } = req.body
// Create payment
exports.webhook = functions.https.onRequest(async (req, res) => {
const { id } = req.body
// Create payment
try {
console.log(id)
console.log('test before db call')
admin.firestore().collection('payments').doc(id).update(
{
status: "paid"
}
).then(() => {
console.log('success')
})
console.log('test after db call')
res.send('ok')
} catch (e) {
res.send('not ok')
}
})
Функция развертывается, console.log(id)
корректна, но всякий раз, когда я звоню admin.firestore()
он больше ничего не печатает.Комментируя эту часть, выдает «обещание решено». У меня сложилось впечатление, что я не могу получить доступ или использовать неправильный синтаксис для доступа к базе данных Firestore, но не могу понять, почему?
Печати журналов Firebase:
Выполнение функции началось
tr _........ (id)
тест перед вызовом дБ
Выполнение функции заняло 1103 мс, завершено скод статуса: 200