假设我从服务请求中获取了一些JSON,如下所示:
{ "message": "We're unable to complete your request at this time." }
我不确定 为什么 撇号会像这样编码('); 我所知道的是我想对其进行解码。
'
这是一种使用jQuery的方法,它突然出现在我的脑海:
function decodeHtml(html) { return $('<div>').html(html).text(); }
不过,这似乎(非常)骇人听闻。有什么更好的方法?有没有“正确”的方法?
这是我最喜欢的解码HTML字符的方式。使用此代码的优点是还保留了标签。
function decodeHtml(html) { var txt = document.createElement("textarea"); txt.innerHTML = html; return txt.value; }
输入:
Entity: Bad attempt at XSS:<script>alert('new\nline?')</script><br>
输出:
Entity: Bad attempt at XSS:<script>alert('new\nline?')</script><br>