【发布时间】:2018-04-15 02:38:13
【问题描述】:
大家好,我是 Firebase 的新手。我做了一个函数,由于某种原因它没有被调用。我能够部署它。我想要做的是,每次我更改一个值时,我的 slack 都会收到通知,但是当我添加一个值/文档时,什么也没有发生。我查看了这些函数,它们根本没有被调用。
const functions = require('firebase-functions');
var request = require("request");
const admin = require('firebase-admin');
admin.initializeApp();
exports.notifyNewRecord = functions.firestore
.document('stallion/{userId}')
.onCreate((snap, context) => {
const newValue = snap.data();
const name = newValue.name;
const points = newValue.points;
return request.post(
"https://hooks.slack.com/I have my slack id here in the code",
{json:{text: `<${user} received ${points} point for an excepted answer>.`}}
)
我的数据库结构是这样的,数据库然后是种马文件,记录就对了,文件名:xxxx,分:xxxx。我正在使用 Firestore 的免费层,不知道这是否重要。我在我的数据库函数中看到该函数,任何帮助将不胜感激。
【问题讨论】:
-
您在日志中看到什么了吗?
-
@RenaudTarnec 因此,由于某种原因,我现在在日志中看到了一些东西,但在我没有定义用户之前,我遇到了一个问题,我定义了名称,见上面还有一些其他的松弛错误。
-
我认为你不能在 firebase 的免费层发出出站请求
-
好的,所以在计划升级之外,我认为您可能想要完成您正在发出的 POST 请求而不是返回它。因此,您可能会等待该请求完成,然后该 HTTP 请求被解析(成功或错误),然后将其作为请求的状态返回。
-
@AaronRabinowitz 感谢投票!希望这对您有所帮助并为您解决!你在这里绝对是在正确的轨道上
标签: firebase google-cloud-firestore google-cloud-functions firebase-admin