Jump to content
Sign in to follow this  
JohnnyVega

[Решено {точка в начале config.php}] Ошибка в приходящем json-ответе (Ajax-запрос)

Recommended Posts

Приветствую, друзья.
 
Столкнулся с такой проблемой.

 

При выполнении какого-либо Ajax-запроса, в приходящем ответе добавляется символ "."
 
Например, json-ответ должен быть таким:

{.....}

А он приходит таким:

.{.....}

Соответственно, когда этот json-ответ начинает парситься в объект/массив javascript, то возникает ошибка парсинга

 

Кто-нибудь сталкивался с таким в своей практике?

 

Update1

Сам этот символ точки я отлавливаю и убираю в json-ответе ajax-запроса. Имеется ввиду в "сырых" данных, до парсинга. 

Но очень до сути докопаться охота....

 

Update2

Такая фигня по всему сайту

 

Update3

Линк на посмотреть в firebug'е или хроме

Share this post


Link to post
Share on other sites

Сталкивался с похожим, правда не в json. 
В редакторе KWrite есть опция "Добавлять отметку о порядке байтов (BOM)" если она включена то редактор добавляет в самое начало файла 1 непечатный символ, который потом вылазит в браузере в виде точки.

Или в контроллере, который отдает json, где-то стоит точка "." (или какой-то непечатный символ),  которая потом появляется в json

Share this post


Link to post
Share on other sites

Спасибо за подсказки. Это проверял в первую очередь.

 

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

$json = array();
$this->response->setOutput(json_encode($json));

всё равно откуда-то точка появляется в ответе :(

Share this post


Link to post
Share on other sites

Сжатие в админке попробуйте отключить

Share this post


Link to post
Share on other sites

Спасибо за подсказки. Это проверял в первую очередь.

 

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

$json = array();
$this->response->setOutput(json_encode($json));

всё равно откуда-то точка появляется в ответе :(

Скинь файл контроллера мне на почту sv2109@gmail.com, гляну. Я просто на 99% уверен что это какой-то непечатный символ в самом файле. 

Share this post


Link to post
Share on other sites

Сжатие в админке попробуйте отключить

Сжатие изначально было отключено

 

Скинь файл контроллера мне на почту sv2109@gmail.com, гляну. Я просто на 99% уверен что это какой-то непечатный символ в самом файле. 

Скинул

 

 

Update1

Сам этот символ точки я отлавливаю и убираю в json-ответе ajax-запроса. Имеется ввиду в "сырых" данных, до парсинга. 

Но очень до сути докопаться охота....

 

Update2

Такая фигня по всему сайту

 

Update3

Линк на посмотреть в firebug'е или хроме

Share this post


Link to post
Share on other sites

Ещё меня смущает, что в заголовке json-ответа

 

Transfer-Encoding: chunked

Share this post


Link to post
Share on other sites

Ответил на почту, еще сюда напишу, может кому пригодится.
Это, как я и предполагал выше, BOM

 

post-20996-0-77980400-1406800942_thumb.png

  • +1 1

Share this post


Link to post
Share on other sites

Там не всё так однозначно. Я тебе в письме написал.

 

Файл контроллера корзины (о котором отписался sv2109) был с BOM.

 

Но в тоже время файл контроллера регистрации покупателей, на который я давал ссылку выше, как положено UTF-8 (без BOM). Но в нём, не смотря на правильную кодировку, выскакивает ошибка.

Share this post


Link to post
Share on other sites

Нашёл причину. Позже отпишусь

Share this post


Link to post
Share on other sites

В-общем, был символ точки в начале /config.php

 

Сама точка была в левой верхней части экрана и малозаметна. Спасибо глазастому sv2109

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Similar Content

    • By RussianStore
      Что не так сделал?     Fatal error: Uncaught exception 'Twig_Error_Loader' with message 'Unable to find template "extension/shipping/pochtaros_license.twig" (looked into: /var/www/u0670933/data/www/russian-store.site/admin/view/template).' in /var/www/u0670933/data/www/russian-store.site/system/library/template/Twig/Loader/Filesystem.php:215 Stack trace: #0 /var/www/u0670933/data/www/russian-store.site/system/library/template/Twig/Loader/Filesystem.php(139): Twig_Loader_Filesystem->findTemplate('extension/shipp...') #1 /var/www/u0670933/data/www/russian-store.site/system/library/template/Twig/Environment.php(312): Twig_Loader_Filesystem->getCacheKey('extension/shipp...') #2 /var/www/u0670933/data/www/russian-store.site/system/library/template/Twig/Environment.php(378): Twig_Environment->getTemplateClass('extension/shipp...', NULL) #3 /var/www/u0670933/data/www/russian-store.site/system/library/template/twig.php(33): Twig_Environment->loadTemplate('extension/shipp...') #4 /var/www/u0670933/data/www/russian-store.site/system/library/template.php( in /var/www/u0670933/data/www/russian-store.site/system/library/template/Twig/Loader/Filesystem.php on line 215
    • By sebades
      2019-05-20 11:44:24 - PHP Notice:  Undefined variable: expire in /system/library/template.php on line 9
      такая ошибка вылезает уже наверное год. Все друге ошибки почти исправил.
      Весь код выглядит вот так:
      <?php class Template { private $adaptor; public function __construct($adaptor) { $class = 'Template\\' . $adaptor; if (class_exists($class)) { $this->adaptor = new $class($expire); } else { throw new \Exception('Error: Could not load template adaptor ' . $adaptor . '!'); } } public function set($key, $value) { $this->adaptor->set($key, $value); } public function render($template) { return $this->adaptor->render($template); } }
       
    • By z0nt1k00
      Добрый день. подскажите выскакивает ошибка в админке, кто знает как её решить ? ) Версия ocStore 3.0.2.0
       
       

    • By Leingard
      450.00 руб
      Скачать/Купить дополнение


      CrashReport - отчет о проблемах покупателей
      Модуль для обнаружения и последующего решения ошибок и проблем Ваших покупателей. Используя модуль, Вы сможете найти проблемные места Вашего сайта с которыми сталкиваются покупатели. Ошибка 404 - теперь не загадка. Вы будете знать где, когда и как покупатель вышел на отсутствующую страницу или подозрительный запрос.
       
      Обнаружение битых ссылок в поисковой системе на Ваш сайт, так же можно обнаружить при помощи модуля.  
       
      DEMO: OC 3: http://oc30.gameshara.ru/
      DEMO: OC 2.3: http://gameshara.ru/module/
      DEMO: OC 2.1: http://gameshara.ru/ocstore21/
      Админ часть: Admin (Логин и пароль: demo)
       
      Возможности модуля:
      Посещение покупателями страниц с ошибокой 404 Вашего магазина. Откуда перешел и когда. Битые товары которые до сих пор отображаются в поисковой системе или на сайте. При заходе на такие, Вы увидите отчёт. Ошибки категорий или старые категории которые нужно убрать (а посетитель их видит). При посещение таких покупателями, Вы увидите. Старые или отсутствующие производители по которым прошелся пользователь. Отображение IP адресов Подозрительные запросы так же будут отображены в отчёте.  
      Инструкция в архиве.
       
      Лицензия:
      Модуль продается с лицензией на сайт. Одна покупка = Один домен Покупая копию модуля вы получаете право на использование. Распространения модуль платно или бесплатно нарушает лицензию и грозит обнулением покупки, а так же уголовной ответственность предусмотренной статей 146 УК РФ (Нарушение авторских и смежных прав)  Автор оставляет за собой право изменят условия предоставления лицензии, изменения цены и стоков продления лицензии. Все доработки, переработки и изменения функционала не входят в стоимость модуля и оплачиваются отдельно по письменной договоренности с автором.  
      Тип распространения:
      Как есть Добавил Leingard Добавлено 15.04.2019 Категория Отчеты Системные требования PHP 5.6+ Сайт разработчика Старая цена 500 Метод активации По запросу в ЛС
      По запросу на почту Ioncube Loader Нет OpenCart 3.0
      2.3
      2.1 ocStore 3.0
      2.3
      2.1 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х Обращение к серверу разработчика Да  
    • By Leingard
      Модуль для обнаружения и последующего решения ошибок и проблем Ваших покупателей. Используя модуль, Вы сможете найти проблемные места Вашего сайта с которыми сталкиваются покупатели. Ошибка 404 - теперь не загадка. Вы будете знать где, когда и как покупатель вышел на отсутствующую страницу или подозрительный запрос.
       
      Обнаружение битых ссылок в поисковой системе на Ваш сайт, так же можно обнаружить при помощи модуля.  
       
      DEMO: OC 3: http://oc30.gameshara.ru/
      DEMO: OC 2.3: http://gameshara.ru/module/
      DEMO: OC 2.1: http://gameshara.ru/ocstore21/
      Админ часть: Admin (Логин и пароль: demo)
       
      Возможности модуля:
      Посещение покупателями страниц с ошибокой 404 Вашего магазина. Откуда перешел и когда. Битые товары которые до сих пор отображаются в поисковой системе или на сайте. При заходе на такие, Вы увидите отчёт. Ошибки категорий или старые категории которые нужно убрать (а посетитель их видит). При посещение таких покупателями, Вы увидите. Старые или отсутствующие производители по которым прошелся пользователь. Отображение IP адресов Подозрительные запросы так же будут отображены в отчёте.  
      Инструкция в архиве.
       
      Лицензия:
      Модуль продается с лицензией на сайт. Одна покупка = Один домен Покупая копию модуля вы получаете право на использование. Распространения модуль платно или бесплатно нарушает лицензию и грозит обнулением покупки, а так же уголовной ответственность предусмотренной статей 146 УК РФ (Нарушение авторских и смежных прав)  Автор оставляет за собой право изменят условия предоставления лицензии, изменения цены и стоков продления лицензии. Все доработки, переработки и изменения функционала не входят в стоимость модуля и оплачиваются отдельно по письменной договоренности с автором.  
      Тип распространения:
      Как есть
  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.