2

我正在尝试使用以下方法在存储桶中的特定路径上触发我的功能:

exports.generateThumbnail = functions.storage.bucket("users").object().onChange(event => {});

当我尝试部署它时,控制台显示:

functions[generateThumbnail]: Deploy Error: Insufficient permissions to (re)configure a trigger (permission denied for bucket users). Please, give owner permissions to the editor role of the bucket and try again.

我怎样才能做到这一点?我是否需要设置 IAM 或存储桶权限或其他什么?

4

1 回答 1

3

看起来问题在于您正在尝试引用名为“users”的存储桶,而不是过滤对象前缀。

你想要的是:

exports.generateThumbnail = functions.storage.object().onChange(event => {
  if (object.name.match(/users\//)) {
    // do whatever you want in the filtered expression!
  }
});

最终我们希望使前缀过滤可用,以便您可以这样做object("users"),但目前您必须像上面一样在您的函数中进行过滤。

于 2017-03-17T17:27:03.370 回答