Google Storage 不是构造函数错误

2023-11-26

我正在构建一个应用程序,我的目标是每次有人将图像上传到 firebase 存储时,云函数都会调整该图像的大小。

...
import * as Storage from '@google-cloud/storage'
const gcs = new Storage()
...

exports.resizeImage = functions.storage.object().onFinalize( async object => {
   const bucket = gcs.bucket(object.bucket);
   const filePath = object.name;
   const fileName = filePath.split('/').pop();
   const bucketDir = dirname(filePath);
....

当我尝试部署此功能时,出现此错误:

Error: Error occurred while parsing your function triggers.

TypeError: Storage is not a constructor

我尝试使用“new Storage()”或只是“Storage”,但没有任何效果。

我是这里的新手,所以如果有什么我忘记让你调试的,请告诉我。

Thanks!


谷歌云/存储:2.0.0

节点js:v8.11.4


The 云存储 API 文档建议您应该使用 require 来加载模块:

const Storage = require('@google-cloud/storage');

这适用于 2.x 版之前的 Cloud Storage 版本。

在 2.x 中,API 发生了重大变化。你现在需要这样做:

const { Storage } = require('@google-cloud/storage');

如果您需要 TypeScript 绑定,请考虑通过 Firebase Admin SDK 使用 Cloud Storage。Admin SDK 只是封装了 Cloud Storage 模块,并且还导出类型绑定以与其一起使用。它很容易使用:

import * as admin from 'firebase-admin'
admin.initializeApp()
admin.storage().bucket(...)

admin.storage()为您提供对您尝试使用的存储对象的引用。

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

Google Storage 不是构造函数错误 的相关文章

随机推荐

  • Xcode 4.2 Lion 未在旧设备上安装/运行项目。 iPhone 3G 4.2.1

    XCode 4 2 在 Lion 上使用 iPhone 3G IOS 4 2 1 构建 4D199 使用 Base SDK 5 0 和 Target 4 2 的项目 在这款手机和旧版 iTouch 上 调试器似乎从未启动 按 运行 后 项目
  • JSON 对象返回未定义的值

    我从 http 调用接收到一个 JSON 对象 并尝试从中提取值 JSON 对象包含 data userid 007 role spy 我使用以下代码来分配role属性到另一个变量 然后进行一些控制台日志检查 currentUserRole
  • SQL Server:将多行合并为一行

    我有一个这样的 SQL 查询 SELECT FROM Jira customfieldvalue WHERE CUSTOMFIELD 12534 AND ISSUE 19602 这就是结果 我想要的是 显示在一行 单元格 中合并所有STRI
  • 在 ARC 下,当通过属性分配给 ivar 时,块是否会自动复制?

    Assume typedef void MyResponseHandler NSError error property strong nonatomic MyResponseHandler ivarResponseHandler synt
  • 将 CCSprite 缩放至精确尺寸

    将精灵缩放到精确尺寸的最佳技术是什么 缩放属性是一个乘数 但是如果您希望精灵的宽度恰好为 X 像素 有没有简单的技术 或者 是否需要简单地使用所需的尺寸和实际的精灵contentsize来计算必要的scale手术 我相信这有效 void r
  • 对于带有 ActiveX 控件的对话框,CDialog::Create 失败

    我有一个模块 可以创建包含 ActiveX 控件的无模式对话框 该模块是 MFC EXE 应用程序的一部分 对话框的创建工作正常 最近 我将模块移出到 ATL COM 服务器中 并将对话框资源从 EXE 复制到 COM 服务器中 当尝试使用
  • 如何检查curl是否启用或禁用

    可能的重复 在php中编写一个函数 我正在使用以下代码 echo Curl function exists curl version Enabled Disabled 这可以启用或禁用它 但我想让 as 函数说函数名称是 iscurl 然后
  • 我什么时候应该使用向量::at而不是向量::operator[]?

    我知道at 慢于 因为它的边界检查 这也在类似的问题中进行了讨论 例如C Vector at 运算符速度 or std vector at 与 operator 我只是不明白这是什么at 方法是有好处的 如果我有一个像这样的简单向量 std
  • 查找 GDP 连续两个季度下降,并以 GDP 连续两个季度增长结束

    我有以下 df 其中包含 1947 年第一季度到 2016 年第二季度美国季度 GDP 的数据 以 2009 年数十亿美元计算 df pd DataFrame data 1934 5 1932 3 1930 3 1960 7 1989 5
  • MSBuild 解决方案命令行输出到各个文件夹

    目前 我有以下 MSBuild 命令 msbuild t Build p Configuration Release p OutputPath C MySolutionOutput MySolution sln 但是 它可以编译 我的解决方
  • 动态更新 iPython 笔记本中的绘图

    如中提到的这个问题 我正在尝试在 iPython 笔记本 在一个单元格中 中动态更新绘图 不同之处在于我不想绘制新线 但我的 x data 和 y data 在某个循环的每次迭代中都在增长 我想做的是 import numpy as np
  • 如何在Python中将两个列表合并为一系列列? [复制]

    这个问题在这里已经有答案了 假设我有两个列表 t1 abc def ghi t2 1 2 3 如何使用 python 合并它 以便输出列表为 t abc 1 def 2 ghi 3 我尝试过的程序是 t1 abc def t2 1 2 t
  • 如何使用jquery按名称获取元素?

    如何使用 jquery 按名称获取 html 元素而不使用 id 或 class 有什么办法可以做到这一点吗 应该知道 给出的唯一正确答案是在属性值周围包含引号的答案 即 name value 强制要求在值周围包含引号 请参阅 http a
  • 将 PHP JSON 传递给 Javascript:echo json_encode 与 echo json 声明

    我正在尝试创建一个通用常量文件以在 php 和 javascript 之间共享 使用 JSON 来存储常量 但我想知道为什么使用 JSON 将 PHP 从 PHP 传递到 javascriptjson encode 过度回显 json 声明
  • Java 拉伸图标以适合按钮

    我正在尝试调整图标大小 使其覆盖整个按钮并位于按钮的中心 当我尝试时 它会拉长我的按钮并弄乱其他所有内容 我该怎么做 目前 我的代码是 在我的类构造函数中 javax swing JButton Console new javax swin
  • 根据列名称创建 DataFrame 的子集

    我有一个名为的 pandas DataFrametimedata具有不同的列名称 其中一些包含振动一词 一些包含偏心率 是否可以创建仅包含 振动 一词的列的数据框 我尝试过使用 vib for i in timedata if Vibrat
  • 在具有多个用户的 Visual Studio 中使用 MSDeploy/Web 部署作为发布方法

    是否可以从多个开发人员 PC 使用 Web 部署 当我们尝试这样做时 当其他人想要进行部署时 我们似乎需要重新发布所有内容 我们是否做错了什么 有没有办法解决这个问题 或者在我们的场景中推荐的方法是什么 我知道从中央位置部署是一个更好的解决
  • 如何使用 Azure.Storage.Blobs BlobClient 检索 Blob 目录路径中的 Blob?

    我没有在网上看到任何关于如何获取位于某个目录中的所有 blob 的示例BlobContainerClient 以前 我使用的是Microsoft Azure Storage包 但这些已被弃用 我扫描目录中所有 blob 的旧代码是 publ
  • 使用模型后如何清除GPU内存?

    我正在尝试在使用完模型后释放 GPU 内存 我检查了nvidia smi在创建和训练模型之前 402MiB 7973MiB 创建并训练模型后 我再次检查了 GPU 内存状态nvidia smi 7801MiB 7973MiB 现在我尝试使用
  • Google Storage 不是构造函数错误

    我正在构建一个应用程序 我的目标是每次有人将图像上传到 firebase 存储时 云函数都会调整该图像的大小 import as Storage from google cloud storage const gcs new Storage