如何根据其blobkey从Google云端存储中获取文件类型?

时间:2015-07-09 09:50:03

标签: python google-app-engine google-cloud-storage

我将该文件的blobkey存储在Google云端存储中。这是我唯一的信息。有了这些信息,我可以读取文件(但我不知道也无法获取其文件名)。有没有办法从文件内容或Google云端存储中获取文件类型或读取其元数据(Content type,例如,image/jpeg)?它允许我分配正确的文件扩展名(文件名不是那么重要,因此标准名称,如noname.jpgnoname.pngnoname.pdf就可以了。

2 个答案:

答案 0 :(得分:1)

但是GCS文件有一个stat对象,至少存储size,md5,content_type和元数据(包含x-goog-meta-头中任何用户指定元数据的Dict)。虽然你无法单独使用BlobKey 在真实服务器上(它可以在SDK上运行,因为存储桶是由blobstore模拟的!)。

https://cloud.google.com/appengine/docs/python/googlecloudstorageclient/gcsfilestat_class

答案 1 :(得分:0)

您无法从blob_key获取文件名或其他属性。您需要一个BlobInfo对象。 GCS文件没有BlobInfo对象。你必须创建自己的。

示例:https://github.com/voscausa/appengine-gcs-blobstore-python