欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

eval()+json

方一強1年前9瀏覽0評論

在JavaScript中,我們時常需要將JSON字符串轉換成JavaScript對象進行操作,或將JavaScript對象轉換為JSON字符串便于傳輸??墒?,在使用eval函數對JSON字符串進行解析時,可能會遭受一些安全風險。

var str = '{"name": "Tom", "age": 20}'; 
eval('var obj = ' + str + ';');

看上去,這段代碼沒有任何問題,但是,如果JSON字符串中包含了非法字符或惡意代碼,eval將會直接執行這些代碼。攻擊者可能通過JSON字符串注入攻擊代碼,造成安全漏洞。

為了避免這樣的情況,我們可以使用JSON.parse()方法。它將會快速地將JSON字符串轉化成JavaScript對象。

var obj = JSON.parse('{"name": "Tom", "age":20}');

而在將JavaScript對象轉化為JSON字符串時,我們常常使用JSON.stringify()方法:

var obj = {"name": "Tom", "age":20};
var str = JSON.stringify(obj);

使用JSON.parse()和JSON.stringify()方法將JSON字符串與JavaScript對象互相轉化,可以避免使用eval()函數造成的安全漏洞。