这是一个很好的洗涤剂吗?

时间:2013-01-31 02:37:11

标签: javascript jquery sanitize

  

可能重复:
  HtmlSpecialChars equivalent in Javascript?

我找不到一个好的字符串清理功能,可以在HTML中安全使用。我想知道这是否是一个好方法:

String.prototype.sanitize = function() {
  return $('<div></div>').text(this).html();
}

2 个答案:

答案 0 :(得分:4)

对XSS进行消毒,是的。对于SQL注入的清理,没有。

答案 1 :(得分:1)

删除要求更好(并且仍然很容易):

String.prototype.htmlspecialchars = function() {
  var span = document.createElement('span'),
  txt = document.createTextNode(this);

  span.appendChild(txt);

  return span.innerHTML;
}

document的耦合仍然不是很糟糕,因为无论如何它都会被使用,但我更喜欢在this answer中使用连续的String.replace()