无法使用 Google 云存储和 Cloud Functions for Firebase 下载文件

2024-01-11

我遇到的问题与此相反:使用 Cloud Functions for Firebase 和 @google-cloud/storage 删除图像时出现问题 https://stackoverflow.com/questions/43178152/issues-deleting-an-image-using-cloud-functions-for-firebase-and-google-cloud-st

(为了记录,我已经尝试了那里建议的所有事情)。

基本上我有一个已知的文件路径,然后是由数据库事件触发的云函数。

我可以初始化一个存储桶,获取一个文件及其名称,但是当我尝试下载它时,我收到 API 错误:未找到。

这是我的代码:

module.exports = (orgID, reportID) => {
  const bucket = gcs.bucket("MY_PROJECT.appspot.com");

  const filePath = `/safety_hotline/${orgID}/${reportID}`;
  const file = bucket.file(filePath);

  // the name is shown correctly in the console
  console.log(file.name);

  const tempLocalFile = path.join(os.tmpdir(), filePath);
  const tempLocalDir = path.dirname(tempLocalFile);

  return mkdirp(tempLocalDir)
    .then(() => {
      // Download file from bucket.
      return file.download({ destination: tempLocalFile });
    })
    .then(() => {
      console.log("file downloaded succesfully");
    })
    .catch(err => {
      console.log(err);
    });
}

你可以看到我得到了文件名的控制台日志,所以我不明白为什么我不能下载它? 任何建议都会很棒,谢谢!

编辑:为了清晰起见,对代码进行了一些编辑


我看到你有这一行:

  const filePath = `/safety_hotline/${orgID}/${reportID}`;

我猜您可能已经用以下模式命名了您的对象safety_hotline/org/report,但正如上面所写,对象名称的第一个字符将是斜杠。这也是一个合法的对象名称,但通常是无意的。尝试删除斜线?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法使用 Google 云存储和 Cloud Functions for Firebase 下载文件 的相关文章

随机推荐

  • Firebase 身份验证在应用删除后仍然存在? [复制]

    这个问题在这里已经有答案了 我刚刚发布了一个应用程序 它使用 Firebase 身份验证和 Gmail 来对用户进行身份验证 我注意到 如果有人登录然后删除该应用程序 如果他们重新下载该应用程序 他们仍然会使用 Firebase 登录 在我
  • 以编程方式重新启动 React Native 应用程序

    是否可以在不编写任何本机代码的情况下以编程方式重新启动 React Native 应用程序 例如 我从答案中知道这个问题 https stackoverflow com questions 15564614 how to restart a
  • 组织捕获和计时行为不当

    我相信你们中的一些人可能已经 从我最近提出的一系列问题中 了解到我正在 emacs 上设置组织模式并浏览 Brent Hansen 令人印象深刻的组织set up http doc norang ca org mode html 他是一个计
  • 在 for 循环中使用 ggplot2 绘制多个图

    我看了这些问题 1 https stackoverflow com questions 3824412 ggplot2 use options for multiple plots and 2 https stackoverflow com
  • UITableView 部分边框

    有没有办法在 UITableView 部分 组样式 上设置边框 我的意思并不是要更改该部分中单元格的边框 我想要整个部分周围有一个边框 像这样 Note 虽然上图仅显示了单个部分的一部分 但所讨论的表实际上有多个部分 每个部分的长度都是可变
  • 使用 google-api-php-client 下载文件

    我在尝试使用位于以下位置的 php 客户端从 Google Cloud Storage 下载文件时遇到问题https code google com p google api php client https code google com
  • Active Admin 中的自定义表单

    我正在 Active Admin 0 5 中创建自定义表单 我已经注册了一个页面并通过 DSL 创建了一个表单 ActiveAdmin register page Planning namespace gt pos admin do con
  • 如何使用html和css绘制虚线

    如何使用 html 和 css 绘制虚线 如下所示 不是虚线 可以使用这个边框 1px虚线 但需要增加破折号的长度尺寸 而不是宽度 Use repeating linear gradient https developer mozilla
  • 电话软件开发语言

    是否存在通用的手机开发语言 我的意思是 例如 php 或 java 或其他 编辑 我们必须开发一些电话应用程序 并且我们正在寻找不同设备 黑莓 iPhone 摩托罗拉等 中最好的可重用语言 Java 已经非常接近了 但它还远未达到通用性 i
  • 我可以在 Visual Basic 中使用 C++ 函数吗?

    我对编程有点陌生 但我已经制作了一个非常好的库来计算数学问题 例如二次方程和许多其他问题 现在我遇到了一个朋友 他正在用 VB 进行一些编程 我们在想是否可以将我的函数从 C 导入到他的代码中 以便他可以在需要时调用它们 这样我们就可以制作
  • 有没有办法删除逻辑应用运行历史记录/日志?

    有没有办法从逻辑应用中删除所有运行历史记录日志 我知道现在正在测试 日志保留时间 的预览 但删除所有日志的最频繁时间是每周一次 我需要能够更频繁地进行此操作 在本例中是每三天一次 还有其他方法可以删除逻辑应用日志 历史记录吗 EDIT 查看
  • NodeJS 模块安装

    我正在尝试在无法访问互联网的计算机上安装 NodeJS 服务器 我复制了 exe 并执行了它 但现在我需要安装几个模块 所以我的问题是 我可以简单地从我的电脑复制模块吗 或者我必须将服务器连接到互联网并使用 npm 吗 编辑 我已经将所有必
  • Java集群中如何最好地进行文件锁定

    我有一个在 JBoss 上运行的服务器集群 我需要以安全的方式更新文件 具体来说 我需要 锁定文件 A 如果它已经被锁定 则以安全的方式阻塞 这样如果 JVM 突然死机 就不会出现悬空锁 30秒的超时就可以了 读取文件A 改变内容 将文件写
  • t 作为 R 中全局变量的名称:不可能吗?

    我想使用 t 作为 R 中全局变量的名称 但它不允许我这样做 sq1 function t lt lt 7 我收到以下错误 Error in sq1 cannot change value of locked binding for t 我
  • 接收信号的 QML 元素失效了?

    我有类似以下的代码 id myComponent signal updateState property variant modelList Repeater model modelList MyButton Connection targ
  • 3D 空间中向量的旋转和方向 - 逆序

    我在 3D 空间中有两个向量 S 开始 和T 目标 我想找到允许这种变换的旋转矩阵 RM 我知道通过计算叉积 S T我得到了旋转轴 之间的角度S and T是 谁 给的tan S T S T where S T is the 点积S 和 T
  • 使用libavcodec解码H264视频,C

    我正在尝试使用 ffmpeg libavcodec 解码原始 h264 文件 但无法使其正常工作 目前输出应该是原始 YUV 文件 可以用GCC编译代码 gcc o decoder decoder c L lib llibavcodec l
  • 如何使用java.sql.Date节省时间?

    目前 在我的代码中 我正在使用以下 setter 方法将当前日期和时间保存到数据库 但它只保存日期 而不保存时间 emp setJoiningDate new java sql Date System currentTimeMillis 方
  • 可以在 Folium 中绘制路径吗?

    我阅读了许多与此相关的文档 但找不到我想要的东西 我想绘制两点之间的步行路径 是否可以 如果没有 python 中是否有其他库用于此目的 当然可以 使用PolyLine https python visualization github i
  • 无法使用 Google 云存储和 Cloud Functions for Firebase 下载文件

    我遇到的问题与此相反 使用 Cloud Functions for Firebase 和 google cloud storage 删除图像时出现问题 https stackoverflow com questions 43178152 i