javascript - archivos - jQuery jquery-1.10.2.min.map está activando un 404(No encontrado)
jquery version (11)
http://jquery.com/download/ el archivo de mapa y la versión sin comprimir de jQuery. Ponlos con la versión minified:
Incluye la versión minificada en tu HTML:
Compruebe en Google Chrome:
Familiarizarse con la depuración de JavaScript
Estoy viendo mensajes de error sobre un archivo, min.map
, no encontrado:
GET jQuery''s jquery-1.10.2.min.map está activando un 404 (No encontrado)
Captura de pantalla
¿De dónde viene esto?
Como entiendo el navegador, al menos Chrome, no deshabilita la asignación de origen de forma predeterminada. Eso significa que los usuarios de la aplicación activarán esta solicitud de asignación de origen de forma predeterminada.
Puede eliminar la asignación de origen eliminando //@ sourceMappingURL=jquery.min.map
de su archivo JavaScript.
Como se anunció en jQuery 1.11.0/2.1.0 Beta 2 Released
el comentario del mapa de origen se eliminará para que el problema no aparezca en las versiones más nuevas de jQuery
.
Aquí está el anuncio oficial:
Uno de los cambios que hemos realizado en esta versión beta es eliminar el comentario del mapa fuente. Los sourcemaps han demostrado ser una cosa muy problemática y desconcertante para los desarrolladores, generando decenas de preguntas confusas en foros como y causando que los usuarios piensen que jQuery en sí estaba roto.
De todos modos, si necesita usar un mapa de origen, todavía estará disponible:
Seguiremos generando y distribuyendo mapas fuente, pero deberá agregar el comentario del mapa fuente al final del archivo minificado si el navegador no admite la asociación manual de archivos de mapas (actualmente ninguno lo hace). Si genera su propio archivo jQuery utilizando el proceso de compilación personalizado, el comentario del mapa fuente estará presente en el archivo minificado y se generará el mapa; puede dejarlo dentro y usar sourcemaps o editarlo e ignorar el archivo de mapa por completo.
Here puedes encontrar más detalles sobre los cambios.
Aquí puede encontrar la confirmación de que con el jQuery 1.11.0/2.1.0 Released
se eliminó el comentario del mapa de origen en el archivo minified.
Después de seguir las instrucciones de las otras respuestas, tuve que quitar la versión del archivo de mapa para que esto funcione.
Ejemplo: Renombrar
jquery-1.9.1.min.map
a
jquery.min.map
Las nuevas versiones de jQuery requieren este archivo http://code.jquery.com/jquery-1.10.2.min.map
La usabilidad de este archivo se describe aquí http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/
Actualizar:
jQuery 1.11.0 / 2.1.0
// El comentario sourceMappingURL no está incluido en el archivo comprimido .
Me presentaron el mismo tema. La causa para mí fue Grunt concatenando mi archivo JavaScript.
Estaba usando un ;/n
como separador, lo que causó que la ruta al mapa de origen fuera 404.
Así que las herramientas de desarrollo estaban buscando jquery.min.map;
En lugar de jquery.min.map
.
Sé que esa no es la respuesta a la pregunta original, pero estoy seguro de que hay otros por ahí con una configuración Grunt similar.
Puede eliminar el 404 eliminando la línea
//@ sourceMappingURL=jquery-1.10.2.min.map
desde la parte superior de su archivo jQuery.
La parte superior del archivo jQuery se verá así.
/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license
//@ sourceMappingURL=jquery-1.10.2.min.map
*/
Solo cambia eso a
/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license */
Propósito de un mapa fuente
Básicamente, es una forma de asignar un archivo combinado / minimizado a un estado no construido. Cuando creas para la producción, además de minimizar y combinar tus archivos JavaScript, generas un mapa fuente que contiene información sobre tus archivos originales. Cuando consulta un determinado número de línea y columna en su JavaScript generado, puede realizar una búsqueda en el mapa de origen que devuelve la ubicación original. Las herramientas de desarrollador (actualmente compilaciones nocturnas de WebKit, Google Chrome o Firefox 23+) pueden analizar el mapa de origen automáticamente y hacer que parezca que está ejecutando archivos no combinados y sin minería. (Lea más sobre esto aquí )
Si Chrome DevTools informa un 404 para un archivo .map (quizás jquery-1.10.2.min.map
, jquery.min.map
o jquery-2.0.3.min.map
, pero puede suceder con cualquier cosa) lo primero que debe saber Es esto solo se solicita cuando se utiliza el DevTools. Tus usuarios no van a golpear este 404.
Ahora puedes arreglar esto o deshabilitar la funcionalidad de sourcemap.
Arreglo: obtener los archivos
A continuación, es una solución fácil. Diríjase a http://jquery.com/download/ y haga clic en el enlace Descargar el archivo de mapa de su versión, y también deseará que se descargue el archivo sin comprimir.
Tener el archivo del mapa en su lugar le permite depurar su jQuery minificado a través de las fuentes originales, lo que le ahorrará mucho tiempo y frustración si no le gusta tratar con nombres de variables como a
y c
.
Más sobre sourcemaps aquí: Introducción a los mapas fuente de JavaScript
Esquivar: deshabilitar sourcemaps
Por el contrario, en lugar de obtener los archivos, puede desactivar los mapas de origen de JavaScript por completo en su configuración. Esta es una buena opción si nunca planeas depurar JavaScript en esta página. Use el icono de engranaje en la parte inferior derecha de DevTools, para abrir la configuración, luego:
Si desea obtener una versión diferente del archivo de mapa de origen, puede usar este enlace http://code.jquery.com/jquery-x.xx.x.min.map
En su lugar x.xx.x pon tu número de versión.
Nota: Algunos enlaces, que obtienes con este método, pueden estar rotos :)
Suponiendo que haya comprobado que el archivo está realmente presente en el servidor, esto también podría deberse a que su servidor web restringe los tipos de archivos que se sirven:
- En Apache, esto podría hacerse con la directiva <FilesMatch> o una RewriteRule si está usando mod_rewrite.
- En IIS necesitarías mirar el archivo web.config .
jQuery 1.11.0 / 2.1.0 el comentario // sourceMappingURL no se incluye en el archivo comprimido.