Это часть моего index.js
файла:
const firebase = require("firebase");
const functions = require('firebase-functions');
// Firebase Setup
const admin = require('firebase-admin');
const serviceAccount = require('./service-account.json');
const cors = require('cors')({ origin: true });
admin.initializeApp({
credential: admin.credential.cert(serviceAccount)
});
exports.addMessage = functions.https.onCall((data, context) => {
const sanitizedMessage = sanitizer.sanitizeText("test");
return admin.database().ref('/messages').push({
text: sanitizedMessage
}).then(() => {
console.log('New Message written');
return { text: sanitizedMessage };
})
});
Эта функция успешно загружена в Firebase. Я пытаюсь позвонить с моего веб-клиента, используя этот код:
var addMessage = firebase.functions().httpsCallable('addMessage');
addMessage({text: "test"}).then(function(result) {
var sanitizedMessage = result.data.text;
console.log(sanitizedMessage);
});
Результатом является ошибка со следующим описанием:
Кроме того, в консоли Firebase нет журнала. Если я захожу по ссылке напрямую, я получаю сообщение журнала. Что подразумевает две вещи:
- URL-адрес моей функции правильно составлен моим веб-клиентом.
- Учитывая, что его посещение напрямую приводит к записи журнала в консоли Firebase, это означает, что мой веб-клиент даже не выполняет этот вызов.
Я застрял, следуя официальному руководству .
Любая помощь в отладке это очень ценится.