2016-07-21 43 views
0

我正在Google App Engine中本地开发应用程序,用户可以在其中上传视频。我设置了Google云端存储库并将读取权限设置为公开。Google App Engine - 从Google云端存储服务中的视频网址中的谷歌存储中的错误

在开发服务器,你可以通过URL访问文件:http://localhost:8080/_ah/gcs/bucket/filename

我试图服务于视频的HTML标记的文件,但它导致在Chrome的错误。我收到消息:无法加载资源:服务器响应状态为500(内部服务器错误)。服务器控制台显示文件请求失败。

这只发生在Chrome浏览器,并在其他浏览器中正常工作。

任何想法为什么会发生这种情况?调试有点困难。

+0

所有请求都应该直接进入云端存储,因此您不会在服务器日志中看到任何内容。为什么涉及服务器? –

+0

@Andrei Volgin我不确定。我只是输入URL作为视频标签中的src值。这里是服务器日志: 请求'/_ah/gcs/app_default_bucket/5733953138851840/user/IMG_2551.mp4失败' '默认:“GET /_ah/gcs/app_default_bucket/5733953138851840/user/IMG_2551.mp4 HTTP/1.1 “500' – JK140

回答

0

您需要使用通向云存储对象的URL。它看起来像:

https://storage.googleapis.com/YOUR_BUCKET/YOUR_OBJECT 

查看控制台以获取默认应用程序存储桶的名称。通常它与您的应用ID相同。

+0

我现在正在dev服务器上测试。 在dev服务器中,URL是:http:// localhost:8080/_ah/gcs/bucket /文件名 这些网址适用于除Chrome以外的所有浏览器。 – JK140

+0

阅读文档:https://cloud.google.com/storage/docs/access-public-data –

+0

我阅读了文档。因为我将'x-goog-acl'设置为'public-read',所以我相信我正在使用文档中引用的Cloud Storage API。公共URL可以通过https:// storage.googleapis.com/YOUR_BUCKET/YOUR_OBJECT访问,但我相信它可以通过http:// localhost:8080/_ah/gcs/bucket/filename来访问。正如我所说的,这些链接可以在其他浏览器中使用,但在Chrome中无法使用。 我感谢您的帮助! – JK140

相关问题