Вопрос:

Получить данные из Firestore с помощью облачных функций HTTP Trigger

javascript node.js google-cloud-firestore google-cloud-functions

14 просмотра

1 ответ

95 Репутация автора

Мой код работает нормально до db.collection("OrderId").doc("D9XjS3efiV12epxQcgYA").get().thenтех пор, пока он не возвращает "firestoreFunc runnig", когда я раскомментирую строку, но не веду журнал и ничего не возвращает внутрь db.collection("OrderId").doc("D9XjS3efiV12epxQcgYA").get().then.

Как я могу получить доступ к Firestore, используя триггер HTTP?

const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();
const db = admin.firestore();

exports.firestoreFunc = functions.https.onCall((data, context) =>  {
    //return "firestoreFunc running";
    db.collection("OrderId").doc("D9XjS3efiV12epxQcgYA").get().then(snapshot =>  {

        console.log("log : 22");

        return 22;
    }).catch(reason =>  {

    })
});
Автор: Jerry Chen Источник Размещён: 11.08.2019 06:45

Ответы (1)


0 плюса

103259 Репутация автора

Ваша функция должна возвращать обещание, которое сопоставляется с данными, которые вы хотите отправить клиенту. Как показано сейчас, ваша функция ничего не возвращает, и выборка документа, вероятно, не будет завершена, так как функция будет завершена, потому что она не знает, ожидая выборки.

Просто добавьте возврат от обещания, возвращаемого get ():

return db.collection("OrderId").doc("D9XjS3efiV12epxQcgYA").get().then(snapshot =>  {
    console.log("log : 22");
    return 22;
}).catch(reason =>  {
    // you should handle errors here
})
Автор: Doug Stevenson Размещён: 11.08.2019 07:27
Вопросы из категории :
32x32