首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >HTTP Cloud function和event-driven Cloud function能否访问Firestore中的同一集合?

HTTP Cloud function和event-driven Cloud function能否访问Firestore中的同一集合?
EN

Stack Overflow用户
提问于 2021-04-23 20:13:08
回答 1查看 31关注 0票数 0

我有一个事件驱动的云函数(用Node.js编写),每当存储桶中有变化时,它都会在Firestore中创建video集合。但是,当我试图从HTTP函数访问相同的数据时,API抛出了一个401未经授权的错误。

HTTP函数:

代码语言:javascript
运行
复制
exports.getVideos = (req, res) => {
   db.collection('video').get().then(querySnapshot =>  {
        return res.status(200).json({
            videos: querySnapshot.docs.map(doc => doc.data()),
            total: querySnapshot.size
          });
      })
      .catch(error => {
        functions.logger.error('Error getting video details: ', error);
        return res.status(500).json({ error });
      });
  };

接口响应: 401未授权

代码语言:javascript
运行
复制
<html>

<head>
    <meta http-equiv="content-type" content="text/html;charset=utf-8">
    <title>401 Unauthorized</title>
</head>

<body text=#000000 bgcolor=#ffffff>
    <h1>Error: Unauthorized</h1>
    <h2>Your client does not have permission to the requested URL <code>/video/get-videos</code>.</h2>
    <h2></h2>
</body>

</html>

我没有看到任何代码方面的问题,所以我想知道这是什么根本原因。

EN

回答 1

Stack Overflow用户

发布于 2021-04-23 20:59:40

可能是使用不同的服务帐户执行不同的云功能。其中一个需要IAM角色/权限,另一个则不需要。

另一种选择-您是否可以检查所有这些都发生在一个GCP项目中,并且两个云函数都应该与一个(且相同的) firestore集合一起工作?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67229729

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档