visualizador google extensiones extension chrome awesome json google-chrome

json - google - Error de sintaxis no detectado: token inesperado<en Chrome



json viewer chromium (14)

El único lugar donde me funcionó es cuando coloco los scripts en public carpeta public donde reside mi index.html y luego colocando estos <script type="text/javascript" src="test/test.js"></script> dentro de etiqueta <body>

Sé que esta pregunta se ha formulado muchas veces, pero no encuentro similitud con mi problema. Recibo este error solo en Chrome, en todos los demás navegadores todo está bien. Devuelvo datos con JSON en varios lugares, pero como mi código funciona en otros navegadores, asumo que no hay nada malo en ello. Chrome no me muestra dónde está el error (en mi código), me muestra estos errores:

Así es como uso JSON:

$.post("getData.php", {''id'' : id}, function(data){ var obj = jQuery.parseJSON(data); . . . ... some mysqli query $data = $query->fetch_assoc(); echo json_encode($data);

Entonces no veo un problema aquí, ¿puede alguien ayudarme con esto?


Error con No Uncaught SyntaxError: Unexpected token < error Uncaught SyntaxError: Unexpected token < utilizando la respuesta de @Mario, pero eso fue solo una parte de mi problema. Otro problema es que JavaScript no obtiene ningún dato del archivo PHP. Esto se resolvió utilizando este código, dentro del archivo PHP: header("Content-Type: text/javascript; charset=utf-8"); Esta respuesta se encuentra en este enlace, donde abrí otra pregunta para resolver este problema: No puedo recibir datos json de PHP en Chrome y Opera


He comentado mi este código: // $(''#description'').val(''<?php echo $_POST[''description'']; ?>''); y tengo ese error


Me enfrenté a un problema similar cuando moví algunos de los archivos js a carpetas y luego los implementé en producción. Después de algunas dificultades descubrí que los archivos js no se implementaron en producción. Asi que

  1. asegúrese de que el archivo para el que se muestra el error existe en el servidor
  2. el camino dado es correcto

Por lo tanto, en ausencia de archivo js, ​​el servidor responde con lo siguiente

<!doctype html> <html> <someTag /> <AnotherTag /> </html>

Es por eso que obtenemos Untaught SyntaxError: Unexpected token <


Mi solución a esto es bastante increíble.

<script type="text/javascript" src="/js/dataLayer.js?v=1"></script>

El nombre de archivo en el atributo src necesitaba estar en minúsculas:

<script type="text/javascript" src="/js/datalayer.js?v=1"></script>

y que de alguna manera inexplicablemente solucionó el problema.

En ambos casos la referencia fue de 404 para prueba.


Obtuve el mismo error ("Uncaught SyntaxError: Error inesperado <") en estas dos líneas al probar una aplicación de ejemplo.

<script type = "text/javascript" src="raphael-min.js"></script> <script type = "text/javascript" src="kuma-gauge.jquery.js"></script>

Después de un control, me di cuenta de que las ubicaciones de los archivos locales no son correctas y que la aplicación de mi servidor local devuelve la página predeterminada como resultado. La aplicación del cliente puede encontrar los archivos, pero los archivos fundados son la página predeterminada, no los archivos * .js. Así que recibo Uncaught SyntaxError: Unexpected token <

Cambié a la ubicación original en el intenet y se resolvió.

<script type = "text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/raphael/2.1.2/raphael-min.js"></script> <script type = "text/javascript" src="//www.jqueryscript.net/demo/Creating-Animated-Gauges-Using-jQuery-Raphael-js-kumaGauge/js/kuma-gauge.jquery.js"></script>


Para anular el error que puede experimentar en Chrome (y probablemente en Safari), intente establecer el parámetro Ajax como tipo de datos dataType: "json" . Entonces no deberías llamar a parseJSON() en el obj porque la respuesta que obtendrás viene deserializada.


Parece que todos tienen diferentes experiencias con esta y otras soluciones también :) Esta es mi "historia".

Mi cosa vino de un archivo validate.php recuperado con ajax. La salida estaba destinada a ser:

$response[''status''] = $status; $response[''message''] = $message; $response[''param''] = $param; echo json_encode($response);

Y el error que causó el error "Inesperado token <" fue simplemente que en algunos casos no se había declarado $ message (pero solo $ status y $ param). Por lo tanto, agregó esto al principio del código.

$message = ''''; // Default value, in case it doesn''t get set later on.

Así que supongo que esas "pequeñas cosas" pueden ser muy importantes en este escenario. Así que asegúrese de verificar realmente su código y hacerlo a prueba de balas.


Puede ser que el recurso que está tratando de solicitar esté bajo acceso restringido a través de la configuración de su aplicación web, es decir, el usuario debe estar registrado para que la aplicación sirva el archivo.

Intente agregar esto a su archivo Web.Config ( esto es para aplicaciones .NET ):

<location path="js/resourcefile.js"> <system.web> <authorization> <allow users="?" /> </authorization> </system.web> </location>

Puede colocarlo en cualquier lugar antes de la etiqueta de configuración de cierre.


Puede verificar su red (consola) y ver la respuesta del servidor ... La "<" será la primera letra de su respuesta. Algo como "<" índice no definido XY en la línea Z> "


Si está intentando realizar una carga de archivos Ajax o algo similar, debe deshacerse de mostrar más HTML después de imprimir su texto de respuesta ajax. Probablemente eso le da este mensaje de error. Si está utilizando PHP Framework, debe seguir la sintaxis de Framework para finalizar la aplicación. Si está codificando PHP puro, puede usar ''salir'' después del texto de respuesta ajax.

Espero que esto ayude a ahorrar el tiempo de algunos en encontrar una solución para esto. :) feliz codificación !!!


Tuvo el mismo error. Mi problema se debió al cambiar el directorio de mi proyecto y al no poder ajustar la ruta a mis archivos estáticos en el servidor para reflejar la nueva ruta (es decir, era ./src/public pero debería haber sido ./public ).


cambiarlo a

$.post({ url = ''getData.php'', data : { ''id'' id } , dataType : ''text'' });

De esta manera, ajax no intentará analizar los datos en json o similar


header("Location: route_to_main_page");

He encontrado este problema al tener un archivo de manejo de errores 404 personalizado. En lugar de lanzar algún contenido html, se suponía que debía redirigirse a la URL de la página principal. Funciono bien

Luego utilicé esto como un esqueleto para un próximo proyecto, por lo tanto, no cambiar "route_to_main_page" en realidad en el nuevo proyecto (URL diferente) se convirtió en "route_to_external_url" por lo que cualquier error 404 dentro de su código (faltan hojas de estilo CSS, bibliotecas js) volvería el " Error de sintaxis no capturado: símbolo inesperado < ".