我正在審查使用eval()方法對基於XSS的攻擊造成的不良影響。有一段代碼需要防範可能的XSS攻擊,我猜JSON.parse()應該可以正常工作。將eval()轉換爲JSON.parse
var request = new XMLHttpRequest();
var url = encDataPath + "/jcr:content/metadata.json?_charset_=utf-8";
url = Granite.HTTP.externalize(url);
request.open("GET", url ,false);
request.send(null);
var jsonData =eval("(" + request.responseText + ")"); // <-- here
var assetTitle = jsonData["dc:title"];
var mimetype = jsonData["dc:format"];
能有人建議我如何可以改變eval()
(用於jsonData)到JSON.parse?
這個問題似乎回答自己......? – Liam
我不明白你爲什麼要問如何用另一個東西代替另一個東西,看起來太明顯了,下面的答案。爲什麼在[xss]和[code-injection]下標記?奇怪的。 –