Javascript - Firebase有关如何获取用户ID的函数

时间:2018-03-02 00:21:24

标签: javascript firebase google-cloud-functions google-authentication

我想使用firebase-tools在Firebase上定义自定义函数。有没有办法从firebase-functions获取userId?

在这个代码示例上说,是否可以获得发送请求的用户?

string, 

我尝试使用以下代码获取string, 失败。

我对js和firebase都很陌生,所以请放轻松,我正在努力学习。

2 个答案:

答案 0 :(得分:2)

您过度简化了HTTP触发器的工作方式。他们对提出请求的实体一无所知。它可以是用户,也可以是一些自动程序。用户无需进行身份验证即可访问您的功能。

如果您希望将对HTTP触发器的访问权限仅限于经过身份验证的用户,则可以尝试this other question中所述的操作。 official sample code显示了您需要做的事情。

底线就是这个。除非你做一些安全传输到用户所在的功能(由id令牌识别),否则你真的不知道他们是谁。

答案 1 :(得分:0)

认为我从这篇文章中找到了更好的答案: https://medium.com/super-declarative/dev-snack-testing-firebase-cloud-functions-with-user-id-tokens-83841d3f06c。 http函数的基本2种方式

  1. functions.https.onRequest :如果可用,您可以从请求中获取令牌,然后使用 firebase admin api 获取用户 UID;
  2. functions.https.onCall 用于验证请求:您从公开的上下文对象中获取它