vue防止xss攻击的示例分析:
用node.js做测试,在终端引入xss,命令如下:
npm install xss --save
在vue的页面进行引入,例如:
import xss from 'xss'
定义一个变量进行测试,例如:
//测试一个没有进行防止xss攻击的示例
<p v-html="test"></p>
export default {
data () {
return {
test: `<a onclick='alert("xss攻击")'>链接</a>`
}
}
解决以上情况的方法:
<p v-html="$xss(test)"></p>
import xss from 'xss'
export default {
data () {
return {
test: `<a onclick='alert("xss攻击")'>链接</a>`
}
}
Object.defineProperty(Vue.prototype, '$xss', {
value: xss
})