У голові моєї HTML-сторінки:
<script src="https://raw.github.com/cloudhead/less.js/master/dist/less-1.3.3.js"></script>
Коли я завантажую сторінку у своєму браузері (Google Chrome v 27.0.1453.116) і включаю інструменти для розробників, він говорить:
Відмовилися виконувати скрипт із " https://raw.github.com/cloudhead/less.js/master/dist/less-1.3.3.js ", оскільки його тип MIME ("текст / звичайна") не виконується, і включена сувора перевірка типу MIME.
Дійсно, сценарій не запускається. Чому Chrome вважає, що це звичайний текстовий файл? Він чітко має .js
розширення файлу.
Оскільки я використовую HTML5, type
атрибут я пропустив , тому вважав, що це може спричинити проблему. Тому я додав type="text/javascript"
до <script>
тегу і отримав такий же результат. Я навіть спробував type="application/javascript"
і досі отримав ту саму помилку.
Тоді я спробував змінити його type="text/plain"
просто з цікавості. Браузер не повернув помилку, але, звичайно, і JavaScript не запустився.
Нарешті я подумав, що періоди у назві файлу можуть відкинути браузер. Отже, у своєму HTML-коді я змінив усі періоди на символ виділення URL-адреси %2E
:
<script src="https://raw.github.com/cloudhead/less%2Ejs/master/dist/less-1%2E3%2E3.js"></script>
Це досі не вийшло. Єдине, що справді працює (тобто браузер не видає помилок і JS успішно працює) - це якщо я завантажую файл, завантажую його в локальний каталог, а потім змінюю src
значення на локальний файл. Я б краще не робив цього, оскільки намагаюся заощадити місце на власному веб-сайті.
Як змусити Chrome визнати, що пов'язаний файл - це фактично JavaScript?