1

情况:我有大量视频和图像以及小型 Play 应用程序,它们在数据库中存储对 blob 的引用。对于没问题的网络使用,我正在渲染页面,我在其中放置 Flowplayer,在它的配置中,我使用直接 blob 的路径作为源视频。无论如何,我被要求为其他旧设备提供额外的可能性 - 它应该直接在响应正文中发送带有标题的文件:

Content-Type:video/mp4
Content-disposition:inline
Content-Transfer-Encoding:binary

最初,该解决方案是使用 PHP 脚本完成的,该脚本使用 CURL 将 blob 获取到服务器,并作为带有操纵标头的客户端的响应返回。

问题:使用 Play 完成这项工作的最佳方式是什么?(最好不要将文件下载到服务器)。Blob 将是公开的,所以我不需要关心隐藏原始路径,我只需要添加上面提到的标头即可。

  1. 我应该使用WS.url()将文件获取到服务器并将其作为Result带有修改后的标题的文件发送吗?WS我试过这个,但超时有一些问题。
  2. 还尝试设置 header Content-Location:http//mystorage...,无论如何,据我所知,它无论如何都需要响应正文中的文件。因此,也许还有其他一些仅使用标头的技术。
  3. 有没有办法在返回直接 blob 时强制自定义标头(即通过在 GET 参数中设置它)?

也许一些完全不同的方法?

4

1 回答 1

0

我用方法解决了我的问题。1,但使用 ofjava.net.URL代替WS.url(),

赏金承诺对于更好的提议是实际的(特别是如果它在不将文件下载到服务器的情况下完成)。

于 2013-02-14T10:22:04.257 回答