2016-09-22 4 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 начал поддерживать этот mime-тип, переопределяющий их v11. Но на практике это никогда не бывает необходимым, о чем говорится в другом сообщении, которое вы связали.

С точки зрения безопасности, что вас беспокоит - ответ НЕТ. Не используя это, вы не можете навязать какую-либо проблему безопасности, аналогично, используя это самостоятельно, вы не будете лучше защищены.

Если вы заинтересованы в обоснованности ответа, скажем, например, если он действителен json перед разбором и использованием, существует лучший выбор метода getResponseHeader, который также облегчит вам отмену запроса в случае недопустимого заголовка рано, как только появились заголовки; см. https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/getResponseHeader

+0

Отлично, это имеет большой смысл. Спасибо за подробный ответ. –

Смежные вопросы