web-dev-qa-db-fra.com

Quel est le type javascript MIME pour l'attribut type d'une balise de script?

Quel est le type de javascript MIME ?

Plus précisément, quelle est la bonne chose à mettre dans l'attribut "type" d'une balise de script? application/x-javascript et text/javascript semblent être les principaux prétendants.

107
defrex

C'est une erreur courante. Le type MIME pour javascript n'a pas été standardisé depuis des années. C'est maintenant officiellement : " application/javascript ".

Le vrai coup de pouce ici est que la plupart des navigateurs n'utiliseront pas cet attribut de toute façon, du moins pas dans le cas de la balise de script. Ils regardent réellement à l'intérieur du paquet et déterminent le type pour eux-mêmes.

Donc, l'essentiel est que le type = "text/javascript" ne fait rien en ce qui concerne le javascript, mais il fait partie de la spécification pour les deux HTML 4 et XHTML 1.0 .

134
keparo

De loin, c'est la première page que j'ai trouvée sur le sujet avec un sens à ce sujet.

Ma recherche collective suggère:

  1. text/javascript comme l'a déclaré Keparo doit être utilisé en html4 et xhtml1 si vous voulez qu'il soit validé. Bien que les navigateurs l'ignorent.
  2. application/javascript devrait être le nouveau type MIME officiel si tout le monde est d'accord et quand tout se rattrape.
  3. application/x-javascript (x signifiant non officiel) est la référence MIME côté serveur actuelle pour javascript.
  4. Tout le monde s'attend à ce que, comme d'habitude, Microsoft décide de faire quelque chose de complètement différent pour embrouiller davantage la question.

Résumé: Pour l'instant, si vous voulez que votre html/xhtml fonctionne dans MSIE et valide avec W3C, déclarez type="text/javascript". Si vous voulez que votre serveur Web sache que vous voulez dire javascript, utilisez application/x-javascript.

21
ekerner

texte/javascript

Je crois que IE n'accepte pas l'application/x-javascript

Spécification du langage de script

4
Morgan ARR Allen

Dans une balise de script, j'utiliserais du texte/javascript. Cela apparaît de toute façon dans la spécification HTML 4.0.

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

[EDIT] C'est marrant comme le RFC qui a standardisé sur application/javascript a 2 ans, mais text/javascript est encore plus courant. Est-ce encore un autre cas de triomphe personnalisé sur les normes? Il apparaît également dans HTML5 .

2
tvanfosson

Le RFC officiel qui définit le type Javascript MIME est RFC4329 .

     
7. Types de supports JavaScript 
 
 7.1. texte/javascript (obsolète) 
 
 Nom du type: texte 
 Nom du sous-type: javascript 
 Paramètres requis: aucun 
 Paramètres facultatifs: charset, voir section 4.1. 
 Considérations d'encodage: 
 Identiques aux considérations de la section 3.1 de la [RFC3023]. 
 
 Considérations de sécurité: Voir la section 5. 
 Considérations d'interopérabilité: 
 Aucune, sauf comme indiqué dans d'autres sections de ce document. 
 
 Spécifications publiées: [JS15] 
 Applications qui utilisent ce type de support: 
 Interprètes de script, comme indiqué dans ce document. 
 
 Informations supplémentaires: 
 
 Nombre (s) magique (s): n/a 
 Extension de fichier (s): .js 
 Code (s) de type de fichier Macintosh: TEXTE 
 
 Personne et adresse e-mail à contacter pour plus d'informations: 
 Voir la section Adresse de l'auteur. 
 
 Intende d utilisation: OBSOLETE 
 Restrictions d'utilisation: n/a 
 Auteur: Voir la section Adresse de l'auteur. 
 Contrôleur de changement: IESG. 
 
 7.2 . application/javascript 
 
 Nom du type: application 
 Nom du sous-type: javascript 
 Paramètres requis: aucun 
 Paramètres facultatifs: charset, voir section 4.1. 
 Considérations de codage: 
 Identiques à celles de la section 3.2 de la [RFC3023]. 
 
 Considérations de sécurité: voir la section 5. 
 Considérations d'interopérabilité: 
 Aucune, sauf comme indiqué dans d'autres sections de ce document. 
 
 Spécifications publiées: [JS15] 
 Applications utilisant ce type de support: 
 Interprètes de script, comme indiqué dans ce document. 
 
 Informations supplémentaires: 
 
 Nombre (s) magique (s): n/a 
 Extension (s) de fichier (s) : .js 
 Code (s) de type de fichier Macintosh: TEXTE 
 
 Personne et adresse e-mail à contacter pour plus d'informations: 
 Voir la section Adresse de l'auteur. 
 
 Inte utilisation nded: COMMUN 
 Restrictions d'utilisation: n/a 
 Auteur: Voir la section Adresse de l'auteur. 
 Contrôleur de changement: IESG. 
1
cweiske