Google app engine 从谷歌云存储服务静态文件?
我想为app engine中托管的应用程序提供存储在google云存储中的静态文件。在HTML文件中,我使用Google app engine 从谷歌云存储服务静态文件?,google-app-engine,google-cloud-storage,Google App Engine,Google Cloud Storage,我想为app engine中托管的应用程序提供存储在google云存储中的静态文件。在HTML文件中,我使用 <link href="https://storage.cloud.google.com/my_bucket/custom.css" rel="stylesheet"> 如果登录用户的google帐户具有访问bucket的权限,则它可以正常工作。 因为任何人都可以访问我的应用程序,在这种情况下,静态文件将不会被提供 是否可以公开bucket中的静态文件?我将静态文件(c
<link href="https://storage.cloud.google.com/my_bucket/custom.css" rel="stylesheet">
如果登录用户的google帐户具有访问bucket的权限,则它可以正常工作。
因为任何人都可以访问我的应用程序,在这种情况下,静态文件将不会被提供
是否可以公开bucket中的静态文件?我将静态文件(custom.css)设置为“公共共享”(ACL设置为“公共读取”),但其他用户仍无法访问它。我不确定您是如何上载文件的,以及为什么公共读取设置不正确,但您也可以通过。只需找到bucket和文件并单击
公开共享
复选标记,即可获得链接
或者,您可以使用with public read立即上载该文件:
gsutil cp -a public-read custom.css gs://my_backet
除了通过手动更改每个静态文件外,您还可以使用以下方式公开查看: 用于设置当前存储桶对象的公共读取
gsutil -m acl set -R -a public-read gs://BUCKET_NAME
用于将未来上载设置为默认值:
gsutil -m defacl set public-read gs://BUCKET_NAME
“公开共享”复选框将自动选中上载的每个文件
对于,请确保您已为组和用户输入授权id或电子邮件,并为组和用户输入域,否则您将收到如下错误消息:
'DefAclCommand' object has no attribute 'continue_on_error'
您也可以在或中执行此操作。添加文件后,是否通过在存储桶上设置默认ACL来执行此操作?是的。我使用了files.gs.create(“/gs/my_bucket/custom.css”,acl='public-read')。缺少复选标记!谢谢你的照片,否则我就找不到了。