2016-09-22 61 views
0

把這個代碼:的JavaScript - XMLHttpRequest的overrideMimeType在IE

let jsonRequest = new XMLHttpRequest(); 
jsonRequest.overrideMimeType("application/json"); 
jsonRequest.open('GET', './js/settings.json', true); 

IE不支持overrideMimeType,我的HTML已經被設置爲UTF-8。離開overrideMimeType線路是否有風險?沒有它似乎工作得很好。 This question有幾乎相同的問題,但答案不是很清楚。

回答

0

IE從他們的v11開始支持這種mime-type覆蓋。但這在實踐中並不是必需的,這在您鏈接的其他帖子中討論過。

從安全角度來看,您關心的是 - 答案是否定的。不使用它不能強加任何安全問題,同樣單獨使用它也不會使你更安全。

如果你關心響應的有效性,比如說 - 如果它在解析和使用之前是有效的json,那麼使用getResponseHeader方法有更好的選擇,這將有助於你在無效頭的情況下中止請求只要標題到達,就儘早。看到https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/getResponseHeader

+0

完美,這是很有道理的。感謝您的詳細解答。 –