用户可以上传到谷歌云存储吗?
问题描述:
我想创建一个对象,给我的用户上传url,并让他们上传数据。生成的对象必须是公共可读的。这可能与谷歌云存储?如果是这样,是否有可能通过谷歌应用程序引擎,我在哪里可以找到文件和/或例子来做到这一点?用户可以上传到谷歌云存储吗?
答
您可以使用blobstore服务创建上传URL。请参阅create_upload_url函数。
为了让对象公开访问,您可能需要使用bucket的acls。请参阅Cloud Storage Overview。
答
要让用户直接上传到Google云端存储,您可以使用Signed URLs功能。这允许您授予对单个用户的对象发出PUT请求的权限。
如果您使用的是Python,则有python example demonstrating signed URLs。
答
另一个直接上传到Google云端存储的选项是Resumable URLs。
如果您的对象很大,比如视频,那么可以用这种方式将其上传。如果上传失败(例如,客户端失去了互联网连接),您可以从停止的地方恢复,而不必让用户重新开始。此外,您无需重新启动上传,节省了一些资金。
但是,如果您的媒体很小,只需使用已签名的网址即可。