GET STREAM中的OData XSS转义

2020-09-18 05:21发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家们, 我正在使用GET_S...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家们,

我正在使用GET_STREAM方法从后端检索文件,因为XSS安全目的文件名已使用cl_abap_dyn_prg => escape_xss_css(filename)进行了转义,如果文件名包含空格或特殊字符,则将其转换为-2e 和-5f在下载时,文件名与上传的文件名不同。 例如,文件名" abc _123"转换为" abc-2e-5f123",这是因为XSS转义。 还有其他方法可以下载文件而不更改原始名称(包括XSS转义)吗?

预先感谢。




1条回答
CJones
2020-09-18 05:50

我使用如下

数据:lv_file_name类型字符串,"保存完整的文件名
        lv_filename TYPE bitm_filename。 转义后保存文件名

 "转义文件名
 lv_filename =转义(val = lv_temp_filename
                       格式= cl_abap_format => e_url)。
 在内容配置头中设置文件名
           ls_response_header-name ='内容处置'。
           ls_response_header-value ='附件;  filename ="'。
           合并ls_response_header-value lv_filename'"'INTO ls_response_header-value。
           调用别名方法设置头文件名
           set_header(is_header = ls_response_header)。

BR。

一周热门 更多>