文章不易,请关注公众号 毛毛虫的小小蜡笔,多多支持,谢谢。

问题

有个朋友问了个问题:
为啥vue中的v-html不会执行<script>中的js代码?

比如,给v-html赋予下面这个值,虽然看到DOM中有值,但却不会弹窗。

<script>alert(/xss/)</script>

解释

可能他还不知道,这个不是vue的限制,而是html5中的规定。

html5中为了安全起见,不会执行innerHTML中插入的<script>的代码。

所以,如果想给v-html赋值<script>的代码,虽然能看到在dom中成功展示,但却不会执行<script>中的js代码的。

那v-html能否防御xss攻击?

既然v-html都不会执行<script>的js代码,那能否防御xss攻击呢?

详情 请查看:毛毛虫的小小蜡笔

 

版权声明:本文为simonbaker原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/simonbaker/p/16203887.html