type plain form data content application javascript http content-type

plain - Al servir archivos JavaScript, ¿es mejor usar la aplicación/javascript o application/x-javascript?



media type (5)

En la mayoría de las situaciones, el tipo de mime que envía el servidor no tiene ninguna diferencia práctica. Me gustaría ir con application/javascript , que también es recomendado por un RFC.

Toda la pregunta cabe en el título. Y para agregar algo de contexto: no estoy preguntando qué es lo mejor según lo que dicen las especificaciones, sino qué funciona mejor dada la combinación de navegadores implementados hoy en día.

Algunos puntos de datos:

  • Google usa text/javascript para el JS utilizado en su página de inicio.
  • Google usa text/javascript en Google Docs.
  • Google usa application/x-javascript para servir archivos JavaScript con su servicio de bibliotecas Ajax .
  • Yahoo usa application/x-javascript para servir su JS.
  • Yahoo usa application/x-javascript para el JavaScript publicado en su página de inicio.

Ha sido "texto / javascript", pero esto está obsoleto (consulte la Lista de IANA ) y ahora debe ser "aplicación / javascript" (vea otra lista de IANA ).


Si elige usar la aplicación / javascript para js en sus páginas, ¡IE7 e IE8 no ejecutarán su script! Culpe a Microsoft todo lo que quiera, pero si desea que la mayoría de las personas ejecuten sus páginas, use texto / javascript.


Solía ​​ser language="javacript" . Luego cambió a type="text/javascript" . Ahora es type="application/javacript" . Ok esto se está volviendo tonto. Algunos de los navegadores más antiguos no reconocen la nueva application/javascript , pero aún reconocen el text/javascript . Planeo seguir usando esto, o perderé horas de mi tiempo tratando de cambiar CADA instancia de text/javascript en application/javascript .
Ahora algún día lo opuesto podría ser cierto. Algún día, los navegadores más nuevos podrían rechazar la técnica anterior para cumplir estrictamente con los estándares.
Pero hasta que las personas que miran mi sitio web empiezan a quejarse de que "desde que actualicé mi navegador, aproximadamente el 50% de su sitio web desapareció", no tengo ningún motivo para cambiar el código en mi sitio web.


  • text/javascript es obsoleto
  • application/x-javascript fue experimental al decidir pasar a ...
  • application/javascript es el tipo MIME oficial actual para JS

Dicho esto, los navegadores a menudo ignoran el content-type enviado por el servidor y prestan mucha atención al atributo type (y algunos aún no reconocen la application/javascript ).

Mi recomendación:

  • Use la aplicación / javascript en el servidor
  • Use HTML 5 y omita el atributo de type de los elementos de script