【问题标题】:Serving videos from blobstore Google app engine提供来自 blobstore Google 应用引擎的视频
【发布时间】:2015-09-03 21:10:59
【问题描述】:

我正在开发一个 Google App Engine (Python) 应用程序,但遇到了一些问题。我的 blobstore 中有一个视频,我想在 <iframe> 标签中提供该视频,但我无法获取源 URL 以输入标签的“src”字段。我在使用谷歌应用程序引擎的图像 api 方面取得了一些成功(特别是已知 Blobkey 的 get_serving_url(Blobkey) 方法),虽然它在开发服务器上工作,但一旦我推出应用程序,我就会收到以下错误:

File "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/api/images/__init__.py", line 1794, in get_serving_url
 return rpc.get_result()
File "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/api/apiproxy_stub_map.py", line 613, in get_result
 return self.__get_result_hook(self)
File "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/api/images/__init__.py", line 1892, in get_serving_url_hook
 raise _ToImagesError(e, readable_blob_key)
TransformationError

所以我的问题是:知道我的 blobstore 中视频的 Blobkey,我如何获取服务 url 以在 <iframe> 标签中显示视频?

【问题讨论】:

    标签: python html google-app-engine video blobstore


    【解决方案1】:

    好的,我明白了。我从网站打了一个电话到服务器,并简单地使用self.send_blob 来提供视频。 所以客户端:

    function showVideo (video_blobKey) {
        document.getElementById("Video").setAttribute("src", "/getVideo?key=" + video_blobKey);
    }
    

    和服务器端:

    class getVideo (blobstore_handlers.BlobstoreDownloadHandler):
        def get(self):
            blob_key = self.request.get('key')
            self.send_blob(blob_key)
    

    【讨论】:

      【解决方案2】:

      你不能。 get_serving_url 用于图像而非视频。相反,将视频存储在 Google Cloud Storage 中,而不是 Blobstore 中。然后,您就有了一个可以使用的 URL。

      【讨论】:

        猜你喜欢
        • 2012-01-19
        • 2013-03-11
        • 1970-01-01
        • 1970-01-01
        • 2011-03-06
        • 2015-01-21
        • 2015-10-05
        • 1970-01-01
        • 2011-08-07
        相关资源
        最近更新 更多