后端传的“alert”字符串 html页面变成了alert_a_l_e_r_t
3条回答 默认 最新
关注
当后端向前端传递HTML内容时,为了防止XSS攻击,通常会对一些字符串进行转义。
比如:<会被转义为< >会被转义为>等。
对于alert()这样的JavaScript代码,会被转义为alert_a_l_e_r_t,以防止不信任的HTML内容执行JavaScript。
那么如何解决这个问题,在前端正确显示alert字符串呢?有两种方式:- 在后端传递数据时,不进行HTML转义这种方式存在安全风险,不推荐。
- 在前端接收数据后,进行HTML反转义在前端,接收到alert_a_l_e_r_t字符串后,使用DOMParser。例如:
let str = 'alert_a_l_e_r_t' let doc = new DOMParser().parseFromString(str, 'text/html') let alertStr = doc.body.textContent // alertStr is 'alert'
DOMParser会自动对HTML内容进行反转义,所以alertStr获取到的结果是'alert'。然后,你可以在页面中直接使用alertStr,它已经是正确的HTML内容了:
<span id="alert">${alertStr}</span>
这样,前端展示的结果就是:alert而不是被转义的alert_a_l_e_r_t。
望采纳!
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 在国外文献网站里点击view pdf 加载异常缓慢甚至加载不出来。
- ¥50 python批量提取发票的信息
- ¥15 mysql安装,初始化数据库失败
- ¥15 虚幻五引擎内容如何上传至网盘?
- ¥15 使用mmpose库时出现了问题
- ¥15 IRI2016模型matlab运行报错
- ¥50 bat怎么设置电脑后台自动点击网页指定词运行脚本,输入指定网页链接,指定点击词,指定间隔时间,指定网页出现的词,指定网页出现词出现后后点击锁定,放在后台运行不影响前台鼠标工作
- ¥20 20CrMnMo的高温变形抗力
- ¥15 RTX3.6 5565驱动中断报错
- ¥50 带防重放token(Antireplay-Token)的网站怎么用Python发送请求