jQuery's jquery-1.10.2.min.map запускає 404 (не знайдено)


1061

Я бачу повідомлення про помилку щодо файлу min.map, які не знайдено:

GET jQuery's jquery-1.10.2.min.map запускає 404 (не знайдено)


Знімок екрана

введіть тут опис зображення

Звідки це походить?


1
Щоб виправити свою проблему, я не дотримувався подробиць цієї відповіді. Мій сайт використовує лише файл js, а не карту. Я просто очистив кеш браузера, щоб вирішити це, і перезапустив браузер. Це почало виникати, коли я почав отримувати помилку 500 внутрішнього сервера на вбудованому загальному обробнику ASP.NET (ExtDirectProxy.ashx) і передав дані в jquery для завантаження сторінки. stackoverflow.com/questions/26135251/…
MacGyver

1
змінити потрібну версію та завантажити її з нижньої URL-адреси та перейменувати її code.jquery.com/jquery-1.11.1.min.map
Іман,

1
Це сповільнює завантаження, оскільки браузери завантажують це, навіть якщо не потрібно.
Квентін 2

1
@ Quentin2 відповідно до html5rocks.com/en/tutorials/developertools/sourcemaps Файл карти з оригіналу завантажуватиметься лише у тому випадку, якщо у вас активовані вихідні карти та відкриті ваші інструменти розробника.
Математики

Відповіді:


1271

Якщо Chrome DevTools повідомляє про 404 для файлу .map (можливо jquery-1.10.2.min.map, jquery.min.mapабо jquery-2.0.3.min.mapможе трапитися з чим завгодно), перше, що потрібно знати, це запитується лише під час використання DevTools. Ваші користувачі не вдарять про це 404.

Тепер ви можете виправити це або вимкнути функціональність вихідної карти.

Виправлення: отримати файли

Далі, це легко виправити. Перейдіть на сторінку http://jquery.com/download/ та натисніть посилання Завантажити файл карти для вашої версії, і ви також захочете завантажувати нестиснений файл.

введіть тут опис зображення

Встановлення файлу карт дозволяє налагоджувати свій мінімізований jQuery за допомогою оригінальних джерел, що заощадить багато часу і розчарувань, якщо вам не подобається мати справу зі іменами змінних, як aі c.

Більше про вихідні карти тут: Вступ до вихідних карт JavaScript

Dodge: відключення вихідних карт

Замість того, щоб отримувати файли, ви можете альтернативно повністю відключити вихідні карти JavaScript у своїх налаштуваннях. Це прекрасний вибір, якщо ви ніколи не плануєте налагоджувати JavaScript на цій сторінці. Використовуйте піктограму гвинтика в правому нижньому куті DevTools, щоб відкрити налаштування, а потім: введіть тут опис зображення


9
Я голосую за це (навіть якщо ви відповіли на власне запитання), оскільки вперше я це помітив сьогодні. Це зводило мене з розуму, намагаючись розібратися, тоді я помітив ту саму помилку 404 на двох сайтах, над якими працював, і на думку прийшов варіант "включити вихідні карти" ... ось що я отримую за перегляд ваших інструментів розробника розмовляє і вмикає все відразу. Я перегляну документи, які ви надали.
adam-asdf

47
Додаю ще дві речі. 1) Завантаження файлу карти jQuery недостатньо, вам також знадобиться нестиснений вихідний код (інакше під час налагодження ви побачите порожній файл jquery - *. Js). 2) Якщо ви завантажуєте jQuery з одного з CDN, то всі три файли (карта, стислий та нестиснений вихідний код) знаходяться в одному місці, і ви можете розпочати налагодження відразу.
Конрад Дзвінель

42
Я не впевнений, що 404 для цього слід підняти від DevTools, що бентежить людей, здається. Тим не менш, я принаймні зараз знаю, як з цим боротися. Також @ adam-asdf просто, щоб ви знали, що вам активно пропонується відповісти на власне запитання про SO ... meta.stackexchange.com/questions/17845/…
Грег,

12
Я згоден з @Greg. Помилка 404, піднята в консолі для вихідної карти (яка була запитана від імені Chrome / DevTools), не здається дуже корисною. Тим більше, що багато людей навіть не розуміють, чому (або звідки) цей ресурс запитують.
idbehold

9
@ SpYk3HH Цілком чудово приймати власну відповідь та редагувати сторонні бібліотеки не дуже доцільно .. тому що, якщо ви хочете оновити матеріали, ви забудете, що було змінено.
Ліпіс

276

Ви можете видалити 404, видаливши лінію

//@ sourceMappingURL=jquery-1.10.2.min.map

у верхній частині файлу jQuery.

Верхня частина файлу jQuery буде виглядати приблизно так.

/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license
//@ sourceMappingURL=jquery-1.10.2.min.map
*/

Просто змініть це на

/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license */

Призначення вихідної карти

В основному це спосіб зіставити комбінований / мінімізований файл назад у незабудований стан. Коли ви будуєте для виробництва, поряд із мінімізацією та комбінуванням файлів JavaScript, ви створюєте вихідну карту, яка містить інформацію про ваші оригінальні файли. Коли ви запитуєте певний рядок та номер стовпця у створеному JavaScript, ви можете здійснити пошук на вихідній карті, який повертає початкове місцеположення. Інструменти для розробників (наразі WebKit щомісяця створює, Google Chrome або Firefox 23+) можуть автоматично розібрати вихідну карту та зробити її схожею на те, що ви користуєтеся немініфікованими та некомбінованими файлами. (Детальніше про це читайте тут )


Вибачте, я мав на увазі: чи є якийсь випадок, коли мені знадобився б цей рядок?
Фліон

6
Потрібно лише тоді, коли вам потрібно налагодити свій мінімізований вихідний код JS. Перегляньте другий абзац тут, щоб отримати детальну інформацію про html5rocks.com/en/tutorials/developertools/sourcemaps
kiranvj

5
Бажаю, я бачив це, перш ніж робити обрану відповідь. Це набагато простіше, і ДОЛЖЕН би бути первинною відповіддю. Відповідь самоврядування корисна для інформації, але, безумовно, другорядна, оскільки це перше питання, яке виникає під час гугла, як g3et позбутися від цього роздратування.
SpYk3HH

13
Редагування бібліотек для позбавлення від таких речей не є вдалим вибором. Щоразу, коли ви оновлюєте jquery, ця лінія буде знову.
Арман П.

6
Станом на січень 2014 року посилання на джерельну карту не включаються до дистрибуції jQuery.
Дан Еспарза

44

Як це оголошено у jQuery 1.11.0/2.1.0 Beta 2 Releasedвихідній карті, коментар буде видалено, тому випуск не з’явиться в нових версіях програми jQuery.

Ось офіційне оголошення:

Одне із змін, які ми внесли в цю бета-версію, - це видалити коментар до вихідної карти. Вихідні карти виявилися дуже проблематичною і неприємною справою для розробників, створюючи безліч плутаних питань на форумах, таких як StackOverflow, і змушуючи користувачів думати, що сам jQuery був порушений.

У будь-якому випадку, якщо вам потрібно використовувати вихідну карту, вона все ще буде доступна:

Ми все ще будемо генерувати та поширювати вихідні карти, але вам потрібно буде додати відповідний коментар до вихідної карти в кінці мінімізованого файлу, якщо браузер не підтримує вручну пов’язані файли карт (наразі це не робиться). Якщо ви генеруєте власний файл jQuery за допомогою спеціального процесу збирання, коментар до вихідної карти буде присутній у мінімізованому файлі та карта генерується; ви можете залишити його та використовувати вихідні карти або відредагувати його та повністю ігнорувати файл карти.

Тут ви можете знайти більш детальну інформацію про зміни.


Тут ви можете знайти підтвердження того, що за допомогою коментаря jQuery 1.11.0/2.1.0 Releasedдо вихідної карти в мінімізованому файлі видалено.


1
Але якби не ця плутанина, я б ніколи не заглянув сюди і знав, що карти існують. Я вручну додавав пробіли до мінімізованих файлів, в які хотів заглянути.
крижана вода

1
У браузері Chrome є кнопка, яка буде досить форматувати мінімізований файл. Також доступні інтернет-гарнітури.
Квентін 2


16

У нових версіях jQuery потрібен цей файл http://code.jquery.com/jquery-1.10.2.min.map

Тут можна описати зручність використання цього файлу http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/

Оновлення:

jQuery 1.11.0 / 2.1.0

// коментар sourceMappingURL не включається до стисненого файлу .


3
Ні, я не вірю, що jQuery "вимагає" цього файлу. Це потрібно лише в тому випадку, якщо ви хочете використовувати вихідну карту під час налагодження, у цьому випадку потрібні і файл src, і файл карти.
стайф

1
Привіт @styfle, вихідну карту потрібно було у версії 1.10.2, але з версії 1.11.0 / 2.1.0 потрібно додати її вручну, це тому, що на багатьох користувачів вплинула помилка, яка виникла в консолі браузера
Андрес Сепар

9

Як я розумію, браузер, принаймні Chrome, він не вимикає відображення джерела за замовчуванням. Це означає, що користувачі вашої програми за замовчуванням запустить цей запит на відображення джерела.

Ви можете видалити відображення джерела, видаливши //@ sourceMappingURL=jquery.min.mapфайл зі свого JavaScript.


9

Якщо ви хочете отримати файл вихідної карти різної версії, ви можете скористатися цим посиланням http://code.jquery.com/jquery-x.xx.x.min.map

Замість x.xx.x поставте номер своєї версії.

Примітка. Деякі посилання, отримані цим методом, можуть бути порушені :)


8

Дотримуючись вказівок в інших відповідях, мені потрібно було зняти версію з файлу карти, щоб це працювало для мене.

Приклад: Перейменувати

jquery-1.9.1.min.map

до

jquery.min.map


6

Мені було подано те саме питання. Причиною для мене став Grunt, який об'єднав мій файл JavaScript.

Я використовував ;\nяк роздільник, який спричинив шлях до вихідної карти до 404.

Тож інструменти для розробників шукали jquery.min.map;замість цього jquery.min.map.

Я знаю, що це не відповідь на початкове запитання, але я впевнений, що там є інші, що мають схожу конфігурацію Grunt.



1

Якщо припустити, що ви перевірили, чи файл фактично присутній на сервері, це також може бути спричинено тим, що ваш веб-сервер обмежує, які типи файлів подаються:

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.