毫无疑问,另一个愚蠢的新问题!我在Grails控制器中有一个字节数组,其中包含视频文件的内容(确切地说是一个* .mp4文件).我熟悉如何从grails控制器渲染
JSON,XML和其他基本类型,但我找不到任何显示如何输出视频的示例.本质上我想做以下事情:
render bytes as MP4
我意识到我可能需要一个构造,例如:
render(text:"<xml>some xml</xml>",contentType:"video/mpeg",encoding:"UTF-8")
但是我不清楚我是如何获得字节数组的.显然我不是渲染类似HTML的内容的专家.我一直躲在库函数后面太久了!任何指向参考或示例的指针都将非常感激.
因此,如果它有助于将建议指向正确的方向,那么带有视频的字节来自我正在使用jets3t库读取的S3对象.
最佳答案
OutputStream out = response.getOutputStream()
//set up byte array
byte[] content = yourS3Object.getBytes()
response.setContentLength(content.size())
response.addHeader("Content-disposition", "attachment; filename=${yourS3Object.fileName}")
response.addHeader("Content-type", "video/quicktime")
out.write(content)
out.close()
这应该够了吧.