ada*_*dam 12 google-app-engine blobstore google-cloud-storage
我有一个以前通过标准Google App Engine create_upload_url()过程上传的BlobKeys数据库,每个上传都通过设置gs_bucket_name参数转到同一个Google Cloud Storage存储桶.
我想要做的是能够解码现有的blobkeys,以便我可以获得他们的Google云端存储文件名.我知道我可以使用FileInfo类中的gs_object_name属性,除了:
您必须在上传处理程序中自行保存gs_object_name,否则此数据将丢失.(GCS中对象的其他元数据自动存储在GCS中,因此您无需将其保存在上传处理程序中.
含义gs_object_name属性仅在上传处理程序中可用,如果我当时没有保存它,那么它就丢失了.
此外,create_gs_key()不会起作用,因为它取而代之的是google存储文件名并创建一个blobkey.
那么,我如何才能将之前通过应用引擎上传到Google云存储桶的blobkey获取并获取其Google云端存储文件名?(蟒蛇)
您只能在上传处理程序(fileInfo.gs_object_name)中获取cloudstorage文件名并将其存储在数据库中.之后它会丢失,似乎不会保留在BlobInfo或其他元数据结构中.
Google表示:与BlobInfo元数据不同,FileInfo元数据不会持久保存到数据存储区.(也没有blob键,但是如果需要,可以通过调用create_gs_key来创建一个.)必须在上传处理程序中自己保存gs_object_name,否则这些数据将丢失.
https://developers.google.com/appengine/docs/python/blobstore/fileinfoclass
更新:我能够在Blobstore-Viewer中解码SDK-BlobKey:"encoded_gs_file:base64-encoded-filename-here".然而真实的东西不是base64编码的.
create_gs_key(filename,rpc = None)... Google说:"将加密的blob键作为字符串返回." 有没有人猜到为什么这是加密的?
| 归档时间: |
|
| 查看次数: |
2302 次 |
| 最近记录: |