【发布时间】:2017-10-24 02:40:48
【问题描述】:
我正在尝试制作一个简单的消息传递应用程序。在此过程中,为了安全起见,我想将firebase的云功能特性用于不应在客户端执行的功能。
我想在用户需要时调用的许多函数。我现在尝试这样做的方式是让客户端在单个父项下推送小的“函数请求”对象,以便 onWrite 函数将触发,我可以解析请求对象以执行该函数(我是不使用 http 函数是因为我想通过某种方式安全地知道是哪个用户发出了请求)。
问题是我在 firebase 的文档中找不到方法来知道是哪个用户编写了数据。
在 index.js 我有
exports.requestFunction = functions.database.ref('/function-
requests/{pushId}')
.onWrite(event => {
// Parse event.data.val() for things like the function name and its
// parameters. Then actually call the function.
// Ideally I would also be able to parse event somehow to find the user
// who saved the data.
});
请注意,我考虑过将用户 ID 作为参数包含在内,但这太不安全了,因为任何用户都可以通过提供不同的 uid 来伪装成另一个用户。
【问题讨论】:
标签: javascript node.js firebase google-cloud-functions