如何播放(流而不是下载)使用Blobstore API存储在GCS中的video文件

如何播放(流而不是下载)存储在GCS中的video文件? 该文件是使用GAE Python中的Blobstore API存储的? 目前,当我在前端使用send_blob返回的url时,video会被下载。

我使用以下服务提供video:

video_url = "/v?video_id="+video_blobkey :: class GCSFileServe(blobstore_handlers.BlobstoreDownloadHandler): def get (self): blob_key = self.request.get('video_id') self.send_blob(blob_key) :: app = webapp2.WSGIApplication([ ('/', MainHandler), ('/v', GCSFileServe), ], debug=True) 

我上传video并存储blobkey:

 filename = bucket + "/user_video_"+str (user_index) + "_" + str (i) gcs_file = gcs.open (filename, 'w', content_type = 'video/avi') gcs_file.write (video) gcs_file.close () blobstore_filename = '/gs' + filename video_blobkey = blobstore.create_gs_key (blobstore_filename) 

在前端,我将videoURL传递给TINY Box 2 jquery模式插件 。 如果我提供youtubeurl而不是上传到GCS的video,这可以很好地工作。

我在GCS文档中看到了Streaming Transfers主题,但是可以理解如何在此上下文中使用它(如果这是解决方案)。

最后,我自己想出来了。 实际上,我提供video的方式没有问题。 问题在于我使用的Galleria jquery插件 。 它可以播放来自youtube和更多网站的video,但是如果你指定了不同的URL(如自托管video文件)则不会。


我切换到Videojs在我的网站上播放video。