系统收到了多个不同的 Content-Disposition 标头。为了避免遭到 HTTP 响应拆分攻击,这种情况是不允许的。

时间:2023-03-10 05:39:16
系统收到了多个不同的 Content-Disposition 标头。为了避免遭到 HTTP 响应拆分攻击,这种情况是不允许的。

今天使用Struts2进行上传下载的时候发现了一个现象

系统收到了多个不同的 Content-Disposition 标头。为了避免遭到 HTTP 响应拆分攻击,这种情况是不允许的。

我的Struts2配置文件

  <action name="share_ExportExcel" class="exportExcel" method="share_ExportExcel">
<result name="success" type="stream">
<param name="contentType">application/vnd.ms-excel</param>
<param name="inputName">excelStream</param> <param name="contentDisposition">
attachment;filename=${excelFileName}.xls
</param>
<param name="bufferSize">1024</param>
</result>
</action>

后来在网上查阅资料的时候发现,将第6行的param注释掉就ok了

 <action name="share_ExportExcel" class="exportExcel" method="share_ExportExcel">
<result name="success" type="stream">
<param name="contentType">application/vnd.ms-excel</param>
<param name="inputName">excelStream</param> <!-- <param name="contentDisposition">
attachment;filename=${excelFileName}.xls
</param> -->
<param name="bufferSize">1024</param>
</result>
</action>