Chrome: Uncaught SyntaxError: Неожиданный конец ввода

Если вы управляете вызываемым API, рассмотрите возможность использования необязательного класса Guava

Подробнее здесь . Измените свой метод, чтобы он возвращал Optional вместо Boolean.

Это сообщает вызывающему коду, что он должен учитывать возможность нулевого значения, вызывая один из удобных методов в Optional

168
задан Qix 9 December 2014 в 10:24
поделиться

3 ответа

Эта конкретная ошибка является одним из раздражающих фактов о . В большинстве случаев ваш JavaScript каким-то образом не работает. Например, отсутствует } или что-то в этом роде.

В приведенном примере это также приведет к «Неожиданному концу ввода»:

eval('[{"test": 4}') // notice the missing ]

Но основная причина проблем, по-видимому, заключается в том, что запрошенный URL-адрес JSON имеет Content-Type из text/html, который Chrome, по-видимому, пытается проанализировать как HTML, что затем приводит к неожиданному завершению ввода из-за того, что анализируются включенные теги изображений.

Попробуйте установить для Content-Type значение text/plain. Думаю, это должно решить проблему.

Тем не менее, V8 мог бы лучше справляться с работой, сообщая точно где ввод неожиданно закончился.

219
ответ дан 23 November 2019 в 20:55
поделиться

В моем случае я добавлял JavaScript динамично и использовал двойные кавычки 2 раза в строковых шаблонах, таким образом, я изменил второе на одинарные кавычки, и ошибка закончилась. Я надеюсь, что это поможет некоторым людям, приезжающим здесь по той же причине.

0
ответ дан 23 November 2019 в 20:55
поделиться

Я получаю эту ошибку, когда пропускаю закрывающую фигурную скобку (}) в коде JavaScript. Убедитесь, что ваши брекеты правильно сбалансированы.

10
ответ дан 23 November 2019 в 20:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: