При обслуживании файлов JavaScript лучше использовать приложение /javascript или application/x-javascript

Весь вопрос вписывается в заголовок. И добавить некоторый контекст: я не спрашиваю, что является лучшим в соответствии с тем, что говорят спецификаторы, а скорее тем, что работает наилучшим образом, учитывая сочетание браузеров, развернутых в настоящее время.

Некоторые точки данных:

  • Google использует text/javascript для JS, используемого на их домашней странице.
  • Google использует text/javascript в Документах Google.
  • Google использует application/x-javascript для работы с файлами JavaScript с помощью службы Ajax-библиотек.
  • Yahoo использует application/x-javascript для обслуживания своих JS.
  • Yahoo использует application/x-javascript для JavaScript, который находится на их домашней странице.

Ответ 1

  • text/javascript устарел
  • application/x-javascript был экспериментальным, решив перейти на...
  • application/javascript - текущий официальный MIME-тип для JS

Тем не менее, браузеры часто игнорируют content-type, отправленные сервером, и уделяют большое внимание атрибуту type (а некоторые, возможно, еще не распознают application/javascript).

Моя рекомендация:

  • Использовать приложение /javascript на сервере
  • Используйте HTML 5 и опустите атрибут type из script элементов

Ответ 2

В большинстве ситуаций тип mime, отправляемый сервером, не имеет практических различий. Я бы пошел с application/javascript, который также рекомендуется RFC.

Ответ 3

Это был "текст/javascript", но это устарело (см. IANA List), и теперь это должно быть "application/javascript" (см. другой список IANA).

Ответ 4

Если вы решите использовать приложение /javascript для js на своих страницах, IE7 и IE8 не будут запускать ваш script! Вручите Microsoft все, что вы хотите, но если вы хотите, чтобы большинство людей запускали ваши страницы, используйте текст/javascript.

Ответ 5

Раньше он был language="javacript". Затем он изменился на type="text/javascript". Теперь это type="application/javacript". Хорошо, это становится глупым. Некоторые из старых браузеров не распознают новый application/javascript, но все же узнают более старый text/javascript. Я планирую продолжать использовать это, иначе я буду тратить часы своего времени, пытаясь изменить КАЖДЫЙ экземпляр text/javascript в application/javascript.
Теперь в какой-то день может быть и наоборот. В один прекрасный день новейшие браузеры могут отказаться от старой техники, чтобы быть строго стандартным. Но пока люди, просматривающие мой веб-сайт, не жалуются, что "с момента обновления моего браузера около 50% вашего сайта исчезло", у меня нет мотивов для изменения кода на моем сайте.