stream video from struts2 action multiple contentType?(从struts2动作多个contentType流视频?)
问题描述
我正在尝试播放视频文件,因为我的操作 contentType 设置为
I am trying to play video file, for my action contentType is set to
应用程序/八位字节流
现在如果我将其更改为音频/mpeg,则用户无法下载其他类型的文件.我想简单地知道我们可以设置多个内容类型,如果可以的话?如果不可能,在用户可以上传和下载任何类型的文件的情况下我应该怎么做.
now if i change it to audio/mpeg, then user cant download other types of files. I would like to simply know can we set multiple content type if so how? and if its not possible what should i do in a situation where user can upload and download anytype of file.
推荐答案
当然可以.
您必须输出 Stream Result 类型 来自您的 Action,并指定 parametric contentType,例如:
Struts.xml
<result name="success" type="stream">
<param name="contentType">${yourContentType}</param>
<param name="inputName">inputStream</param>
<param name="contentDisposition">attachment;filename="${yourFileName}"</param>
<param name="bufferSize">1024</param>
</result>
动作
@Getter @Setter private InputStream inputStream;
@Getter private String yourContentType;
@Getter private String yourFileName;
public String execute() throws Exception {
yourContentType = "audio/mpeg";
yourFileName = "yourStuff.mp3";
byte[] yourContent = loadTheContentInSomeWay();
setInputStream(new ByteArrayInputStream(yourContent));
return SUCCESS;
}
您可以参数化 contentDisposition 部分以指定何时必须将文件打开为 attachment(要求下载)或 inline(在浏览器)根据您的需要.
You can parameterize the contentDisposition part to specify when a file must be opened as attachment (ask for download) or inline (open in browser) according to your needs.
这篇关于从struts2动作多个contentType流视频?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:从struts2动作多个contentType流视频?
- 如何使用WebFilter实现授权头检查 2022-01-01
- C++ 和 Java 进程之间的共享内存 2022-01-01
- Jersey REST 客户端:发布多部分数据 2022-01-01
- value & 是什么意思?0xff 在 Java 中做什么? 2022-01-01
- 从 finally 块返回时 Java 的奇怪行为 2022-01-01
- Spring Boot连接到使用仲裁器运行的MongoDB副本集 2022-01-01
- 将log4j 1.2配置转换为log4j 2配置 2022-01-01
- Safepoint+stats 日志,输出 JDK12 中没有 vmop 操作 2022-01-01
- Java包名称中单词分隔符的约定是什么? 2022-01-01
- Eclipse 插件更新错误日志在哪里? 2022-01-01
