在Google Chrome浏览器中加载页面时,控制台中出现一个模糊的错误:
Uncaught SyntaxError:输入意外结束
我不知道是什么原因造成的。我将如何调试此错误?
<script>https://example.com/a.js</script>
<script src="https://example.com/a.js"></script>
在Google Chrome浏览器中加载页面时,控制台中出现一个模糊的错误:
Uncaught SyntaxError:输入意外结束
我不知道是什么原因造成的。我将如何调试此错误?
<script>https://example.com/a.js</script>
<script src="https://example.com/a.js"></script>
Answers:
这个特殊的错误是一个令人烦恼的事实 v8。在大多数情况下,您的JavaScript会以某种方式损坏。例如缺少a }
或类似的东西。
给出示例,这也会产生“输入的意外结束”:
eval('[{"test": 4}') // notice the missing ]
但问题的根源似乎是被请求的JSON的URL有内容类型的text/html
的Chrome显然试图解析为HTML,然后由于导致输入意外结束了包括图像标签是解析。
尝试将Content-Type设置为text/plain
我认为应该可以解决的问题。
尽管如此,V8可以做一下,告诉一个完全是一个更好的工作,其中输入意外结束。
尝试Firebug for Mozilla-它会显示丢失的位置}
。
ctrl+shift+i
会告诉您。
记录在案,任何试图找出导致此错误的各种原因的人。空的HTML5数据属性
data-mydata = ''
也会导致错误。您应该检查数据值是否为空字符串,并且根本不包括该属性。不用说,这与脚本生成的HTML密切相关。
data-setup='{"example_option":true}'
一切正常。
我的问题是Google Chrome缓存。我通过在Firefox上运行Web应用程序进行了测试,但没有出现该错误。因此,我决定尝试清空Google Chrome浏览器的缓存,然后开始工作。
如果您在Anchor标签上遇到错误,只需将“ Onclick”替换为“ href”,或将“ href”替换为“ Onclick”
当我遇到相同的问题时,在请求中将Accept
标头设置application/json
为对我有用。
Content-length
标头指定的字节数超过了响应所包含的字节数,或者服务器可能以某种方式发送了无效的HTML。