FAITES ATTENTION!
Vous ne pouvez pas inclure de scripts Github directement à partir de Github après cette modification .
Nous avons ajouté l'en-tête
X-Content-Type-Options: nosniff
à nos réponses d'URL brutes en 2011 en tant que première étape de la lutte contre la création de liens dynamiques. Cela a pour effet de forcer le navigateur à traiter le contenu conformément à l'en-têteContent-Type
. Cela signifie que lorsque nous définissonsContent-Type: text/plain
pour les vues brutes de fichiers, le navigateur refuse de traiter ce fichier en tant que JavaScript ou CSS.Mais il y a des alternatives. Vérifiez ma réponse à cette question .
J'essaie d'inclure un fichier JavaScript de GitHub dans un fichier HTML local à des fins de test (comme une image trouvée sur Internet: <img src="http://...">
).
Je voudrais quelque chose comme ça:
<script src="https://github.com/[username]/[repository]/blob/master/public/[fileName].js"></script>
Le problème est que cela ne fonctionne pas.
Comment puis-je faire ceci?
Vous pourrez le faire avec une URL similaire à celle-ci:
https://rawgit.com/h5bp/html5-boilerplate/master/src/js/plugins.js
Notez que cela ne revient pas à cliquer sur le bouton "brut" dans GitHub; Ce bouton vous donnera également une version propre du fichier, mais il sera envoyé avec les mauvais en-têtes.
Un mot d'avertissement; le fichier n'est pas n'est pas servi par GitHub. Il est en cours de redirection via le domaine rawgit.com
. Comme indiqué sur https://rawgit.com :
Hey! rawgit.com est pour le plaisir et n'est pas associé à GitHub dans aucun façon.
N'oubliez pas que le propriétaire de ce domaine contrôle maintenant le trafic et que est capable de le manipuler à sa guise.
Utilisez cette URL en production:
https://cdn.rawgit.com/user/repo/tag/file
Cela devrait fonctionner:
<script src="https://raw.github.com/[username]/[repository]/[branch]/[filename].js"></script>
Voici comment vous pouvez être redirigé vers l'adresse requise dans github:
Cela fonctionne même avec le changement récent de github:
<script>
$.getScript("https://raw.github.com/username/repo/master/src/script.js");
</script>
PS. nécessite jQuery.
rawgit semble fermer d'ici fin 2019,
certaines options de diffusion de contenu avec les en-têtes Content-Type appropriés.
Essayez quelque chose comme ça:
<html>
<head>
<script src="https://raw.github.com/e0ne/BlogSamples/master/ModalDialog/AdvancedPopup/jquery.min.js"></script>
</head>
Ça marche pour moi