¿Qué es el tipo MIME de javascript para el atributo type de una etiqueta de script? [duplicar]


Esta pregunta ya tiene una respuesta aquí:

¿Qué es el tipo de javascript MIME?

Más específicamente, ¿qué es lo correcto para poner en el atributo "type" de una etiqueta de script? application/x-javascript y text/javascript parecen ser los principales contendientes.

Author: Krinkle, 2008-10-10

5 answers

Este es un error común. El tipo MIME para javascript no se estandarizó durante años. Ahora es oficialmente: "application / javascript".

El verdadero truco aquí es que la mayoría de los navegadores no usarán ese atributo de todos modos, al menos no en el caso de la etiqueta de script. En realidad, miran dentro del paquete y determinan el tipo por sí mismos.

Así que la conclusión es que el type = "text / javascript" no hace nada en lo que respecta al javascript, pero es parte de la especificación para ambos HTML 4 y XHTML 1.0.

 131
Author: keparo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-12-01 20:22:51

Lejos esta es la primera página que he encontrado sobre el tema con algún sentido al respecto.

Mi investigación colectiva sugiere:

  1. text/javascript como indica Keparo, debe usarse en html4 y xhtml1 si desea que se valide. Aunque los navegadores lo ignoran.
  2. Se espera que application/javascript sea el nuevo tipo MIME oficial si todos están de acuerdo y cuando todo se ponga al día.
  3. application/x-javascript (x significa no oficial) es la referencia MIME del lado del servidor actual para javascript.
  4. Todos espera que, como de costumbre, Microsoft decidirá hacer algo completamente diferente para confundir aún más y rellenar el asunto.

Resumen: Por ahora, si desea que su html/xhtml funcione en MSIE y valide con W3C, declare type="text/javascript". Si desea que su servidor web sepa que se refiere a javascript, utilice application/x-javascript.

 21
Author: ekerner,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-06-26 03:38:04

Texto / javascript

Creo que IE no acepta application / x-javascript

Especificar el lenguaje de scripting

 4
Author: Morgan ARR Allen,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-10-10 01:58:39

En una etiqueta de script usaría text/javascript. Esto aparece en la especificación HTML 4.0, de todos modos.

Http://www.w3.org/TR/REC-html40/interact/scripts.html

[EDITAR] Es curioso cómo el RFC que estandarizado en aplicación/javascript tiene 2 años, pero el texto/javascript es aún más común. ¿Es este otro caso de costumbre triunfando sobre las normas? También aparece en HTML5.

 2
Author: tvanfosson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-10-10 02:24:35

El RFC oficial que define el tipo MIME de Javascript es RFC4329.

     
7.  JavaScript Media Types

7.1.  text/javascript (obsolete)

   Type name:               text
   Subtype name:            javascript
   Required parameters:     none
   Optional parameters:     charset, see section 4.1.
   Encoding considerations:
      The same as the considerations in section 3.1 of [RFC3023].

   Security considerations: See section 5.
   Interoperability considerations:
      None, except as noted in other sections of this document.

   Published specification: [JS15]
   Applications which use this media type:
      Script interpreters as discussed in this document.

   Additional information:

      Magic number(s):             n/a
      File extension(s):           .js
      Macintosh File Type Code(s): TEXT

   Person & email address to contact for further information:
      See Author's Address section.

   Intended usage:          OBSOLETE
   Restrictions on usage:   n/a
   Author:                  See Author's Address section.
   Change controller:       The IESG.

7.2.  application/javascript

   Type name:               application
   Subtype name:            javascript
   Required parameters:     none
   Optional parameters:     charset, see section 4.1.
   Encoding considerations:
      The same as the considerations in section 3.2 of [RFC3023].

   Security considerations: See section 5.
   Interoperability considerations:
      None, except as noted in other sections of this document.

   Published specification: [JS15]
   Applications which use this media type:
      Script interpreters as discussed in this document.

   Additional information:

      Magic number(s):             n/a
      File extension(s):           .js
      Macintosh File Type Code(s): TEXT

   Person & email address to contact for further information:
      See Author's Address section.

   Intended usage:          COMMON
   Restrictions on usage:   n/a
   Author:                  See Author's Address section.
   Change controller:       The IESG.
 1
Author: cweiske,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-04-12 15:36:15