通过签名 URL 上传到 Google 云存储 - object 不可公开读取

Upload to Google Cloud Storage via signed URL - object not publicly readable

我遵循了 this 教程,允许使用签名的 URL 将文件从 GWT 前端直接上传到 Google 云存储。我通过指定工作正常的内容类型扩展了 Java 示例。然后,我看到以这种方式上传的文件不可公开阅读。为了让这个工作我试过:

我的假设是我使用的这个扩展 header 可能是错误的?然后根据文档,所有经过身份验证的 GCS 请求将默认应用 private ACL。

无论如何 - 为什么我无法在 Google 控制台以项目所有者身份登录时公开读取这些文件?我可以为通过控制台上传的所有文件这样做(我知道在那种情况下所有者是项目所有者而不是服务帐户)。

我做错了什么?我怎样才能让任何人都可以公开阅读它们?

多谢指教!

我想如果你完成了给定的docs。它清楚地提到,如果您需要用户在不使用 google 帐户的情况下下载对象,那么此方法会为用户提供特定时间的分配 URL 以下载对象。我假设可能无法在签名时公开这些对象。如果您仍然需要该功能,我建议您完成对象的可恢复上传或简单上传。

同时尝试将您项目的服务帐户作为所有者放入开发者控制台中存储桶名称右侧的 "Edit default permission of Object"。