Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google cloud platform 触发google云函数bucket中的文件负载_Google Cloud Platform_Google Cloud Functions - Fatal编程技术网

Google cloud platform 触发google云函数bucket中的文件负载

Google cloud platform 触发google云函数bucket中的文件负载,google-cloud-platform,google-cloud-functions,Google Cloud Platform,Google Cloud Functions,我有一个关于Google云函数的问题,它是由存储桶上的事件触发的,我正在用Python开发它 我必须读取文件的数据,该文件刚刚在触发事件的bucket上最终确定了一个PDF文件,我正在查找传递给我的函数数据上下文的事件对象上的文件负载,但该对象上似乎没有负载 我是否必须使用云存储库从存储桶中获取文件?有没有办法直接从触发函数的上下文获取有效负载 Enrico通过查看Firebase文档中的更多信息,似乎文件的有效负载确实没有包含在参数中。这是有道理的,因为不知道刚刚定稿的文件有多大,也不知道它是

我有一个关于Google云函数的问题,它是由存储桶上的事件触发的,我正在用Python开发它

我必须读取文件的数据,该文件刚刚在触发事件的bucket上最终确定了一个PDF文件,我正在查找传递给我的函数数据上下文的事件对象上的文件负载,但该对象上似乎没有负载

我是否必须使用云存储库从存储桶中获取文件?有没有办法直接从触发函数的上下文获取有效负载

Enrico

通过查看Firebase文档中的更多信息,似乎文件的有效负载确实没有包含在参数中。这是有道理的,因为不知道刚刚定稿的文件有多大,也不知道它是否适合在函数运行时的内存中

因此,您必须根据元数据中的信息,通过单独的调用从bucket中获取文件。从其上下文/数据中获取文件名和其他信息,包括:

exports.generateThumbnail = functions.storage.object().onFinalize(async (object) => {
  const fileBucket = object.bucket; // The Storage bucket that contains the file.
  const filePath = object.name; // File path in the bucket.
  const contentType = object.contentType; // File content type.
  const metageneration = object.metageneration; // Number of times metadata has been generated. New objects have a value of 1.

  ...
我看看能不能找到一个更完整的例子。但我希望它在Firebase包装的原始Google云函数上也能起到类似的作用,即使在使用Python时也是如此

更新:从Python绑定显然基于此的情况来看,路径应该作为数据['resource']或数据['name']可用