Open Cuuube opened 7 years ago
主要是为了防止不法黑客通过特殊字符插入代码片段,使后台或者前台无意间执行黑客代码,从而造成损失。 html上一些敏感符号还是请务必转码一下。如“<”、“>”、“&”、“ ' ”和“ " ”。
这里呈上在下不成熟的代码:
let escapeHTML = function (html, isUnescape){ let str = html; //要添加转义的写在这里,&必须在第一位 let escapeList = { '&': '&', '<': '<', '>': '>', '"': '"', "'": "'", ' ': ' ', } function _replaceAll(string, oldChar, newChar) { let re = new RegExp(oldChar, 'g'); return string.replace(re, newChar); } function _escapeHTML() { for (let i in escapeList) { str = _replaceAll(str, i, escapeList[i]); } return str; } function _unescapeHTML() { for (let i in escapeList) { str = _replaceAll(str, escapeList[i], i); } return str; } if (!!isUnescape) { return _unescapeHTML(); } else { return _escapeHTML(); } } module.exports = escapeHTML;
思想
主要是为了防止不法黑客通过特殊字符插入代码片段,使后台或者前台无意间执行黑客代码,从而造成损失。 html上一些敏感符号还是请务必转码一下。如“<”、“>”、“&”、“ ' ”和“ " ”。
放代码
这里呈上在下不成熟的代码: