工具js:
// xss跨站脚本防御机制
export function xssdefense(str) {
// Javascript script src img { } ( ) < > = , . ; : " ‘ # ! / * \ `
// str = str.replace(/</g, '<')
// str = str.replace(/>/g, '>')
// str = str.replace(/"/g, '"')
const map = {
// '&': '&',
'<': '<',
'>': '>',
'"': '"',
"'": '''
};
str = str.replace(/[&<>"']/g, function(m) { return map[m] ? map[m] : m; });
// str = str.replace(/src/g, '')
// str = str.replace(/javascript/g, '')
// str = str.replace(/href/g, '')
return str
}
用法:
this.inputedContent = xssdefense(this.inputedContent) // 加入xss防御