美文网首页
velicity(vm)变量如何提供给js用

velicity(vm)变量如何提供给js用

作者: 6cc89d7ec09f | 来源:发表于2018-09-01 15:09 被阅读144次

controller层放入变量

modelMap.addAttribute("dataList", JSON.toJSONString(result.getReportSubLogList()));

vm文件

$(function({
var reportArchiveStatusEnum =  #SLITERAL($!dataList);
}));

即可!

但是

SLITERAL可能存在XSS注入风险,
SLITERAL宏使用的前提条件是业务上这个变量必须是富文本的情况,没有业务需求,禁止使用这个宏,同时需要满足以下条件中的一条,则可以忽略,请联系安全接口人漏洞:
SLITERAL只能用于处理的变量为系统内部生成,或者系统内部写死,不可能由外部请求引入;

注意:即使变量从数据库获取,若此数据可能由用户提交,也存在注入风险。 修复方案: 不使用SLITERAL宏,若需要支持富文本输出,请采用#SHTML宏,若需要支持URL格式输出,采用#SURL宏,若需要支持js输出,采用#SJS宏。

按照这个建议修改,应该是

$(function({
    var reportArchiveStatusEnum =  JSON.parse('#SJS($!dataList) ');
}));

相关文章

网友评论

      本文标题:velicity(vm)变量如何提供给js用

      本文链接:https://www.haomeiwen.com/subject/dskuwftx.html