"Ресурс интерпретируется как script, но передается с текстом типа MIME/html".

Извините, если это фактический дубликат, но мне не удалось найти ответ для моей проблемы.

Загружаю script с помощью jQuery $.getScript. Но это вызывает следующую ошибку:

Ресурс интерпретируется как script, но передается с текстом типа MIME/html.

Проблема появляется только в Safari в Mac OS

Если посмотреть заголовки, полученные с сервера, они содержат Content-Type:application/x-javascript, поэтому я действительно не понимаю, в чем проблема.

Ответы

Ответ 1

Ресурс интерпретируется как script, но передается с текстом типа MIME/html.

Технически это не ошибка, а уведомление/предупреждение и не должно вызывать никаких проблем в частности; если что-то хорошее, что некоторые браузеры могут игнорировать такой ответ.

Правильный заголовок ответа Content-Type для JavaScript в соответствии с RFC:

Content-Type: application/javascript

Предыдущие значения text/javascript и application/x-javascript либо устарели, либо устарели соответственно; что IE <= 8 будет принимать только первые, поэтому будьте осторожны при внесении любых изменений в ваши документы.

Ответ 2

У меня была такая же проблема, и это было вызвано блоком авторизации Web.Config, мне пришлось добавить запись в Web.Config, чтобы сделать этот script доступным также, когда он не вошел в систему:

<location path="Scripts/jquery-2.0.3.min.js">
  <system.web>
    <authorization>
      <allow users="*"/>
    </authorization>
  </system.web>
</location>