Je suis curieux de connaître la sémantique des types MIME application/javascript
contre text/javascript
.
De toute évidence, l'un est censé être exécuté, et l'autre est censé être uniquement du texte.
Je vois application/javascript
lorsque vous regardez les en-têtes d'une charge externe .js.
HTTP/1.1 200 OK
Date: Mon, 13 Jan 2014 18:32:58 GMT
Server: Apache/2.2.22 (Unix) mod_ssl/2.2.22 OpenSSL/0.9.8e-fips-rhel5
Content-Type: application/javascript
Content-Length: 856
keep-alive: timeout=5, max=59
Via: 1.1 (jetty)
Accept-Ranges: bytes
Si ce application/javascript
exécutera le javascript, pourquoi n'utilisons-nous pas
<script type="application/javascript">
// some js code.
</script>
Et vice-versa, pourquoi une charge js externe n'est-elle pas text/javascript
?
Par ceci , text/javascript
est obsolète . Utilisation application/javascript
au lieu.
texte/javascript (obsolète): JavaScript; Défini et rendu obsolète dans la RFC 4329 afin de décourager son utilisation en faveur de l'application/javascript. Cependant, text/javascript est autorisé en HTML 4 et 5 et, contrairement à application/javascript, prend en charge plusieurs navigateurs. L'attribut "type" de la balise en HTML5 est facultatif et il n'est pas nécessaire de l'utiliser du tout puisque tous les navigateurs ont toujours supposé la valeur par défaut correcte (même en HTML 4 où cela était requis par la spécification).
Cette norme est incompatible avec IE <= 8.