通过以下哪种方式来防止XSS攻击
jsonify()
在蟒蛇瓶里?
testvar = {0: {'Name': 'df',
'test1': 'sdf',
'test2': 'sdf'},
1: {'Name': 'dfdf',
'test1': 'sdf',
'test2': 'dfdf'},
2: {'Name': 'dfdf',
'test1': 'dfdfd',
'test2': 'dfdfd<script>alert("test");</script>'}}
@app.route("/test")
def test():
return jsonify(testvar)
这是Javascript:
output_body = ""
$.getJSON('/test',function(data){
$.each(data, function(key,val){
output_body += "<tr>"
for(property in val) {
output_body += "<td>" + val[property] + "</td>"
}
output_body += "</tr>"
});
$('table').html(output_body);
});
此代码执行一个js警报框。
当然,我可以通过转义<和>。但是在上面的例子中,有没有一个好的方法来防止XSS攻击呢?