Ответ не является допустимым ответом json: Не обновить и не создать записи. Ответ не является допустимым ответом JSON? — Хабр Q&A

Ответ не является допустимым ответом json: Не обновить и не создать записи. Ответ не является допустимым ответом JSON? — Хабр Q&A

Содержание

wordpress - Публикация или загрузка не удалась. Сообщение об ошибке: «Ответ не является правильным ответом JSON»

Сегодня у меня возникла проблема в WordPress. Когда я пытаюсь создать новую страницу и загружать новое изображение в разделе администрирования WordPress, я пытаюсь найти решение, но не получаю его ... Так что после часа шлифования я нашел решение ...

Ошибка

«Публикация не удалась. Сообщение об ошибке: Ответ не является допустимым ответом JSON.»

7

Rawan-25 23 Ноя 2019 в 19:36

12 ответов

Лучший ответ

Прямо сейчас вы можете использовать плагин Classic Editor для исправления этой проблемы. вопрос .

Ответом за ошибку является редактор, которого я не знал, но есть новая проблема редактора. Если вы получаете ту же проблему, пожалуйста, используйте плагин ниже. Для устранения этих проблем я занимаюсь исследованиями и разработками. Если я получу выходное решение, я сделаю обновление в ближайшее время ...

9

Peter Mortensen 7 Дек 2019 в 23:50

В основном, Сброс Permalinks в настройках WordPress.

*** Если выше, это не работает; попробуйте один из способов при следующей опции:

A. Отключить плагины

B. Измените тему на базовую тему WordPress.

C. Переустановите WordPress

-1

Sen Sokha 1 Апр 2020 в 03:56

Изменение настроек постоянной ссылки, как упоминалось ранее, решило проблему для меня. index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule>

1

CdeoEm 6 Фев 2020 в 02:11

У меня была та же самая ошибка "Неправильный ответ JSON" при попытке опубликовать мой контент. WordPress, кажется, делает сообщение JSON при публикации нового сообщения / страницы, поэтому я проверил вкладку сети в моих инструментах разработчика. Если вы откроете вкладку «ответ» для этого вызова JSON, вы можете увидеть более подробную информацию об этом неверном ответе JSON.

В моем случае (у вас могут быть другие) некоторые устаревшие сообщения отладки были выведены до фактических данных JSON и испортили ответ. После исправления устаревшая публикация сообщения снова заработала.

<br />
<b>Deprecated</b>:  Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a future version.  To avoid this warning set 'always_populate_raw_post_data' to '-1' in php.ini and use the php://input stream instead. in <b>Unknown</b> on line <b>0</b><br />
<br />
<b>Warning</b>:  Cannot modify header information - headers already sent in <b>Unknown</b> on line <b>0</b><br />
{__NORMAL_JSON_DATA_HERE__}

1

tookwebdev 17 Янв 2020 в 01:31

Я только что установил классический плагин редактора, и он решил проблему «Ответ не является правильным ответом JSON».

1

Archie Kariuki 9 Янв 2020 в 10:20

Зайдите в настройки> постоянные ссылки. Выберите «Имя сообщения» и сохраните.

Попробуйте обновить ваши посты / страницы. Если это не работает, попробуйте выбрать другой параметр в настройках> постоянные ссылки.

10

Tashi 23 Дек 2019 в 05:37

У меня была такая же проблема в локальной среде разработчика, и я обнаружил, что проблема связана с перезаписью разрешений. Убедитесь, что ваш файл .htaccess имеет соответствующие разрешения.

sudo chmod 755 .htaccess

После установки разрешений сохраните настройки постоянной ссылки. Если проблема все еще существует, убедитесь, что mod_rewrite включен. Следующее будет работать для apache2 в Ubuntu.

sudo a2enmod rewrite
sudo systemctl apache2 restart

Если все еще не работает, ваша конфигурация apache, вероятно, слишком строгая. Следующее должно сделать трюк для apache2 в Ubuntu. Отредактируйте /etc/apache2/apache2.conf и найдите блок корневого каталога. Обычно это тот, с / var / www, как показано ниже. Вы, вероятно, увидите AllowOverride None. Просто измените его на All, как показано ниже для вашего локального сервера, но вы, вероятно, захотите провести некоторые исследования и быть более защищенными на рабочем сервере.

<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>

После внесения изменений сделайте еще один перезапуск на Apache, и все должно быть хорошо.

sudo systemctl apache2 restart

2

sgaith 2 Фев 2020 в 03:02

Похоже, это до сих пор не исправлено.

Обходной путь, который сработал для меня (публикация в случае, если это работает и для кого-то еще) - в моем случае я использовал блок HTML, который вызывал проблему. Что я сделал, так это добавил блок Абзац> Редактировать как HTML. Это решило проблему на данный момент. Жаль, что WP еще не изучал это, похоже, что это уже давно происходит.

0

jade newport 27 Фев 2020 в 08:33

Я получал одно и то же сообщение об ошибке при добавлении и / или обновлении страниц в дополнение к другим случайным ошибкам. Я получал ошибки как на моем локальном сервере разработки, так и на моем веб-хосте. При переключении на одну из тем по умолчанию (например, двадцать девятнадцать) ошибки исчезнут. Для меня проблема оказалась в файлах шаблонов моей страницы. Я заметил, что при выборе шаблона для вновь созданной страницы у меня будет несколько вариантов с одним и тем же именем.

У меня есть несколько файлов шаблонов страниц (например, about-page.php, contact-page.php, services-page. php и т. Д.). При создании этих файлов, поскольку большинство этих страниц были похожи, я просто скопировал бы / вставил из существующего файла, чтобы создать новый файл xxxx-page.php. Однако в некоторых из этих скопированных файлов (не во всех) я забыл изменить «Имя шаблона» (вверху файла).

После того как я проверил и убедился, что все мои файлы шаблонов имеют уникальные имена, ошибка JSON исчезла. Все остальные мои ошибки также исчезли. Я использую WordPress 5.4.

0

rebrink 19 Апр 2020 в 19:25

Если у вас возникли проблемы с загрузкой изображений, выполните следующие действия: https: / /navinrao.com/the-response-is-not-a-valid-json-response/

Я получал эту проблему при обновлении обычного текста тоже. Проблема, с которой я столкнулся, была связана с ключевым словом javascript: void (0) внутри моей ссылки ().

Перед обновлением убедитесь, что в вашем контенте есть ключевое слово, содержащее JavaScript.

<a href="javascript:void(0)" target="_blank" title="Linkedin"><i aria-hidden="true"></i></a>

После того как я удалил javascript: void (0) ; это работает отлично. Приятно провести время 🙂

-1

silwalprabin 16 Мар 2020 в 02:15

У меня была та же самая ошибка, и причиной в моем случае был шорткод, используемый на странице, и функция, которая определяла шорткод, использовала «echo» для вывода данных, а не «return»

-1

Nat 23 Мар 2020 в 08:53

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

-1

Manzini Lionel .T 23 Мар 2020 в 01:45

Устраняем ошибку WoprdPress: - "REST API выдал неожиданный результат" или "Ответ не является допустимым ответом JSON". NGINX. » HUNY Blog

Исправление ошибки WoprdPress и NGINX :
«Запрос к REST API завершился с неожиданным результатом: (404)»
«Ответ не является допустимым ответом JSON.»

Если вы устанавливали WoprdPress по моей статье «Простая установка WordPress на Ubuntu / Debian c HTTPS (SSL) с помощью Docker Compose и LinuxServer SWAG.» и у вас появилась ошибка «REST API выдал неожиданный результат» во вкладке «Состояние здоровья сайта» или «Ответ не является допустимым ответом JSON» при публикации новой записи или редактировании ранее опубликованной, то вам нужно добавить одну строчку в файл default находящийся по пути /home/ubuntu/config/nginx/site-confs и перезапустить контейнер SWAG (linuxserver/swag) в Portainer.

  location / {try_files $uri $uri/ /index.html /index.php?$args;}

Об этом, «черным по белому», написано в документации WordPress на этой странице. Но если вы пришли в поисках сюда, значит не читали её, как и я ))

Точно так же, если вы установили WordPress в операционную систему Ubuntu или Ubuntu Server с Nginx, не с помощью с помощью Docker Compose, а другим способом, например стеком LEMP (Linux, Nginx, MySQL, PHP)

, то эту сточку нужно добавить или изменить, но возможно в другом файле конфигурации Nginx.

Итак, если при попытке добавить новую статью или отредактировать старую вы увидите такую ошибку:

Ошибка публикации. Сообщение об ошибке: Ответ не является допустимым ответом JSON.

Кроме того, если перейдёте на экран «Здоровье сайта» (/wp-admin/site-health.php), то увидите надпись:

Запрос к REST API завершился с неожиданным результатом: (404) <html> <head><title>404 Not Found</title></head> <body> <center><h2>404 Not Found</h2></center> <hr><center>nginx/1. 18.0</center> </body> </html> .
REST API выдал неожиданный результат

То вам необходимо отредактировать файл конфигурации Nginx — ВашСайт.conf. Находится он (скорее всего) по пути /etc/nginx/sites-enabled/

ВашСайт.conf. Замените в нём стандартные строки:

        location / {
                # First attempt to serve request as file, then
                # as directory, then fall back to displaying a 404.
                try_files $uri $uri/ =404;
        }

на:

        location / {try_files $uri $uri/ /index.php?$args;}
или 
        location / { try_files $uri $uri/ /index.php$is_args$args;}
или
        location / { try_files $uri $uri/ /index.php?q=$uri&$args;}

Затем перезапустить сервер Nginx чтобы применить изменения:

nginx -tsudo service nginx restart

После этого проверить, что ошибки исчезли.

Проблема с постоянными ссылками ЧПУ

Изменить адреса ссылок WordPress с такого вида http://сайт.com/?p=123 на такой http://сайт.com/название-публикации/ можно по пути «Настройки» — «Постоянные ссылки», но иногда после этого возможны проблемы:

«Установил WordPress, ссылки у страниц не были переведены в ЧПУ, а имели стандартный вид ?p=123. Если изменить настройки постоянных ссылок на произвольные (/%postname%/), то страницы становятся недоступны (ошибка 404).«

«На моём сайте WordPress после изменения пункта «Простые» по пути «Настройки» — «Постоянные ссылки» на «Произвольно» или «Название записи« перестали открываться страницы. А именно, при открытии любой из страниц отображается такая ошибка: «Not Found The requested URL /page was not found on this server

Если вы столкнулись с похожей проблемой и у вас WordPress + Ubuntu + Nginx, то решение этой проблемы полностью аналогично описанной выше правке файла конфигурации Nginx.

Если проблема не будет решена, то значит у вас другой случай — «гуглите» решение «чпу wordpress .htaccess» (я с таким не сталкивался и описать рабочее решение для этого случая не могу)

Спасибо за внимание!

Похожие публикации:

УСТРАНЯЕМ ОШИБКУ WOPRDPRESS: — «REST API ВЫДАЛ НЕОЖИДАННЫЙ РЕЗУЛЬТАТ» ИЛИ «ОТВЕТ НЕ ЯВЛЯЕТСЯ ДОПУСТИМЫМ ОТВЕТОМ JSON». NGINX. | HUNY

Исправление ошибки WoprdPress и NGINX :

«Запрос к REST API завершился с неожиданным результатом: (404)»

«Ответ не является допустимым ответом JSON.»

Если вы устанавливали WoprdPress по моей статье «Простая установка WordPress на Ubuntu / Debian c HTTPS (SSL) с помощью Docker Compose и LinuxServer SWAG. » и у вас появилась ошибка «REST API выдал неожиданный результат» во вкладке «Состояние здоровья сайта» или «Ответ не является допустимым ответом JSON» при публикации новой записи или редактировании ранее опубликованной, то вам нужно добавить одну строчку в файл default находящийся по пути /home/ubuntu/config/nginx/site-confs и перезапустить контейнер SWAG (linuxserver/swag) в Portainer .

location / {try_files $uri $uri/ /index.html /index.php?$args;}

Об этом, «черным по белому», написано в документации WordPress на этой странице . Но если вы пришли в поисках сюда, значит не читали её, как и я ))

Точно так же, если вы установили WordPress в операционную систему Ubuntu или Ubuntu Server с Nginx, не с помощью с помощью Docker Compose, а другим способом, например стеком LEMP (Linux, Nginx, MySQL, PHP), то эту сточку нужно добавить или изменить, но возможно в другом файле конфигурации Nginx.

Итак, если при попытке добавить новую статью или отредактировать старую вы увидите такую ошибку:

Ошибка публикации. Сообщение об ошибке: Ответ не является допустимым ответом JSON.

Кроме того, если перейдёте на экран «Здоровье сайта» (/wp-admin/site-health.php), то увидите надпись:

Запрос к REST API завершился с неожиданным результатом: (404) <html> <head><title>404 Not Found</title></head> <body> <center><h2>404 Not Found</h2></center> <hr><center>nginx/1. 18.0</center> </body> </html> .

REST API выдал неожиданный результат

То вам необходимо отредактировать файл конфигурации Nginx — ВашСайт.conf . Находится он (скорее всего) по пути /etc/nginx/sites-enabled/ВашСайт.conf . Замените в нём стандартные строки:

location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}

на:

location / {try_files $uri $uri/ /index.php?$args;} или
location / { try_files $uri $uri/ /index.php$is_args$args;}
или location / { try_files $uri $uri/ /index.php?q=$uri&$args;}

Затем перезапустить сервер Nginx чтобы применить изменения:

nginx -tsudo service nginx restart

После этого проверить, что ошибки исчезли.

Проблема с постоянными ссылками ЧПУ

Изменить адреса ссылок WordPress с такого вида http://сайт.com/?p=123 на такой http://сайт. com/название-публикации/ можно по пути «Настройки» — «Постоянные ссылки» , но иногда после этого возможны проблемы:

«Установил WordPress, ссылки у страниц не были переведены в ЧПУ, а имели стандартный вид ?p=123. Если изменить настройки постоянных ссылок на произвольные (/%postname%/), то страницы становятся недоступны (ошибка 404). «

«На моём сайте WordPress после изменения пункта «Простые» по пути «Настройки» — «Постоянные ссылки» на «Произвольно» или «Название записи « перестали открываться страницы. А именно, при открытии любой из страниц отображается такая ошибка: «Not Found The requested URL /page was not found on this server

Если вы столкнулись с похожей проблемой и у вас WordPress + Ubuntu + Nginx, то решение этой проблемы полностью аналогично описанной выше правке файла конфигурации Nginx.

Если проблема не будет решена, то значит у вас другой случай — «гуглите» решение «чпу wordpress . htaccess » (я с таким не сталкивался и описать рабочее решение для этого случая не могу)

Спасибо за внимание!

P.S. Яндекс Дзен не поддерживает (в явном виде) форматирование - "фрагмент кода", поэтому возможно вам будет не удобно копировать команды для Linux, содержание кода для файлов yaml, скриптов и прочего... Исходный текст стати с форматированными "фрагментами кода" можно найти на моём блоге (HUNY Blog):

Устраняем ошибку WoprdPress: — «REST API выдал неожиданный результат» или «Ответ не является допустимым ответом JSON». NGINX.

WordPress и REST API (ошибка 404 и борьба с ней) — Shurgent

Предыстория

Началось с того, что я решил таки доделать свой сайт. В качестве движка выбрал WordPress, установил всё на свой сервер на базе стэка Turnkey LAMP. Все шло как по маслу ровно до того момента пока я не зашел в настройки постоянных ссылок и не выбрал опцию «Название записи». После этого при попытке опубликовать или обновить страницу WordPress выдавал ошибку «Ответ не является допустимым ответом JSON». И с этого момента началось увлекательное путешествие в мир поиска решения проблемы в Google…

Бескрайние просторы интернета

Вбив в строку поиска Google фразу «WordPress ответ не является допустимым ответом json» начал по очереди тыкать по ссылкам в результатах поиска. Чего там только не было… сотни советов от сотни советчиков. Тестирование сайта с помощью плагина «Health Check & Troubleshooting» показало, что проблема кроется в REST API. Поиск уже по этой проблеме снова привел к еще сотне различных проблем и вариантов их решения — начиная от «какой-то плагин запретил REST API, удалите его», заканчивая «установите плагин Classic Editor и будет вас счастье». Установка WordPress чистая, ни одного плагина кроме «Health Check & Troubleshooting» нет, значит проблема точно не в этом. Ставить классический редактор я тоже не хотел, потому что какого хрена! Все должно работать, проблема не в плагинах.

Ларчик просто открывался

В итоге, после длительных блужданий среди гор бесполезной информации, я вдруг натыкаюсь на ранее неизвестный мне сайт overcoder. net, на котором человек задал вопрос по данной ошибке. Ему ответил какой-то добрый человек, что возможно у него не включен модуль Apache mod_rewrite… Я полез в настройки своего Apache и обнаружил, что он таки не включен! Мне хотелось пожать ему руку, этому замечательному человеку! После включения модуля нужно было ещё полезть в настройки виртуального сервера и прописать директивы Options Indexes FollowSymLinks и AllowOverride all. Всё! В моем случае это выглядит так:

DocumentRoot /var/www/shurgent.pp.ua
<Directory "/var/www/shurgent.pp.ua">
allow from all
Options Indexes FollowSymLinks
AllowOverride all
Require all granted
</Directory>
ServerName shurgent.pp.ua

То есть просто нужно было включить модуль mod_rewrite и прописать директивы! Всего-то! Ну и, разумеется, перезапустить Apache.

Надеюсь эта статья поможет кому-то неопытному, вроде меня, избежать подобных сложностей при установке нового WordPress. Всем бобра!

Ошибка json определение отсутствует строка 1

ошибка json определение отсутствует строка 1

Поделиться. В составе плейлиста. Ошибка. Повторите попытку позже.  Ответ не является допустимым ответом JSON. просмотра просмотра. Недавно мне довелось разрабатывать на Go http-клиент для сервиса, предоставляющего REST API с json-ом в роли формата кодирования. Стандартная задача, но в ходе работы мне пришлось столкнуться с. Как правило, причинами ошибок в JSON являются отсутствующие или поврежденные файлы.

Узнайте, как скачать и восстановить правильную версию файла oporaelite.ru, чтобы устранить надоедливые сообщения об ошибке. Всем привет! В ИЕ возникла ошибка: 'JSON' - определение отсутствует. Впервые такое вижу. Как исправить без хардкодинга jquery? UPD: добавил if(!oporaelite.ru) oporaelite.ru=false; в начало страницы, но это не есть гут.

Если вы будете прописывать данные в формате JSON вручную, то сделать где-то опечатку проще простого. Кроме того, если в каком-то скрипте встретился код, который нужно проверить на правильность написания, то также возникнут проблемы.

Всем привет! В ИЕ возникла ошибка: 'JSON' - определение отсутствует. Впервые такое вижу. Как исправить без хардкодинга jquery? UPD: добавил if(!oporaelite.ru) oporaelite.ru=false; в начало страницы, но это не есть гут. Поделиться. В составе плейлиста. Ошибка. Повторите попытку позже.  Ответ не является допустимым ответом JSON. просмотра просмотра. Как правило, причинами ошибок в JSON являются отсутствующие или поврежденные файлы. Узнайте, как скачать и восстановить правильную версию файла oporaelite.ru, чтобы устранить надоедливые сообщения об ошибке.

Похожее:

  • Ошибка инициализации 0x24e424f
  • Youtube android ошибка при воспроизведении
  • Аватарка в стим ошибка загрузки
  • Ошибка при установке неро
  • Не могу войти в контакт ошибка 0
  • Что нового в WordPress 5.4

    В этой версии мы в основном встретимся с обновлениями редактора Gutenberg.

    Итак, что нового в 5.4? Начнём с Gutenberg!

    Как я уже сказал, в этой версии основной фокус на редактор Gutenberg.

    1. Блок социальных кнопок

    Это НЕ кнопки «Поделиться».

    У иконок в данный момент есть три разных стиля, ко всему прочему каждую из иконок вы можете сдвинуть на другое место или удалить:

    2. Блок нескольких кнопок в строку

    Та самая штуковина, которая так нужна нам для лендинг пейджей.

    Кстати, курс, про который я говорю на скриншоте, действительно существует, вот он.
    • Вы можете добавлять одну, две и больше кнопок в ряд
    • У кнопок есть стили – «Заполнение» и «Контур»
    • Также настраивается border-radius, цвет, фон

    3. Больше цветовых возможностей. Градиенты

    Даже на том же самом примере с группой кнопок:

    Про градиенты есть отдельный пост.

    4. Отображение миниатюры в блоке свежих записей

    Чтож, давно пора.

    В настройках можете видеть, что возможно установить размер изображения и выравнивание относительно заголовка / текста,

    5. Производительность редактора Gutenberg

    Также заявлено, что повышена производительность редактора – скорость его загрузки уменьшена на 14%, а также на 51% уменьшено время отклика при печатании. По сравнению с WordPress 5.3.

    6. Вэлкам гайд

    При нажатии на меню (где три точки) и потом на ссылку «Welcome Guide» (пока что не переведено), у вас откроется вот такое модальное окно:

    Лично мне пока что не до конца понятна его суть – возможно это нужно для тех людей, кто впервые устанавливает WordPress. Ну а так модалка конечно красивая, что могу ещё сказать 😁

    7. Полноэкранный режим включен теперь по умолчанию

    То есть чёрное меню-сайдбар WordPress справа и админ бар больше тут не отображаются.

    Но это можно выключить:

    Я в принципе понимаю, для чего это сделано, и куда мы движемся (полное редактирование сайта в Gutenberg).

    8. Новый интерфейс добавление ссылок

    Тут однозначно плюсую, стало классно. До этого каждый раз неудобно было настраивать ссылку для открытия в новой вкладке.

    9. Тайтлы для изображений

    Раньше редактор Gutenberg поддерживал только поле «Альтернативный текст», когда вы редактировали блоки «Изображения», теперь же, с WordPress 5.4 (с Gutenberg 6.9) вы можете найти отдельное поле для заполнения атрибута title в изображениях, оно немного запрятано, но я уверен, вы справитесь:

    9. Другие изменения

    А также:

    • Возможность добавлять изображения записи перетаскиванием
    • Кэпшены для таблиц
    • Более легкое управление размерами изображений в блоке Галереи
    • Улучшения по доступности (естественно)

    Изменения, не относящиеся к редактору Gutenberg

    1. Виджет в консоли по Здоровью сайта

    WordPress продолжает качать тему и функционал Здоровья сайта. Теперь у нас появился вот такой виджет:

    Как вы помните, можно отключить его при помощи настроек экрана в верхней правой части экрана.

    2. Другие изменения

    • Различные улучшения доступности (Accessibility). На Мэта на WordCamp Europe 2019 наехали, типо что там по доступности. Так что это теперь один из основных приоритетов.
    • У Виджета календаря немного изменили HTML – ссылки навигации помещены в тег <nav>.
    • Разработчикам теперь будет рекомендоваться использовать apply_shortcode() вместо do_shortcode(), но оба варианта продолжат работать.
    • Favicon. Администраторы могут загружать иконку через кастомайзер, если же нет иконки, то будет использоваться логотип сайта.
    • Хук newblog_notify_siteadmin теперь содержит ID сайта в случае использования WordPress Мультисайт.
    • Поддержка параметров RequiresWP и RequiresPHP в заголовках при создании темы.
    • Поддержка TikTok embeds (вставок). Лол кек.
    • Меню WordPress теперь поддерживает произвольные поля.

    Не так много, как в WordPress 5.3, я там даже целую категорию создавал.

    Миша

    Недавно я осознал, что моя миссия – способствовать распространению WordPress. Ведь WordPress – это лучший движок для разработки сайтов – как для тех, кто готов использовать заложенную структуру этой CMS, так и для тех, кто предпочитает headless решения.

    Сам же я впервые познакомился с WordPress в 2009 году. Организатор WordCamp. Преподаватель в школах Epic Skills и LoftSchool.

    Если вам нужна помощь с вашим сайтом или может даже разработка с нуля на WordPress / WooCommerce — пишите. Я и моя команда сделаем вам всё на лучшем уровне.

    Что такое ошибка json определение отсутствует

    что такое ошибка json определение отсутствует

    Ошибка. Повторите попытку позже.   Ответ не является допустимым ответом JSON. просмотра просмотра. Если вы будете прописывать данные в формате JSON вручную, то сделать где-то опечатку проще простого.

    Кроме того, если в каком-то скрипте встретился код, который нужно проверить на правильность написания, то также возникнут проблемы. Разработчики WordPress ввели новый API REST, как говорится для того, чтобы как то получать данные из сайта в виде json.

    Зачем, почему и как, никому не интересно, но вот результат сия нововведения, огорчил очень много владельцев блогов. Хорошо организованные и простые для понимания, бесплатные учебные пособия, по самостоятельному веб строительству, с большим количеством примеров использования HTML, CSS, JavaScript, SQL, PHP, Python, Bootstrap, Java, XML и т.д. Я в контакте видяхи не могу посмотреть что-то, в углу там красная табличка, и в ней написано JSON Error.

    Что-то такое.

    Я в контакте видяхи не могу посмотреть что-то, в углу там красная табличка, и в ней написано JSON Error. Что-то такое. Хорошо организованные и простые для понимания, бесплатные учебные пособия, по самостоятельному веб строительству, с большим количеством примеров использования HTML, CSS, JavaScript, SQL, PHP, Python, Bootstrap, Java, XML и т.д.

    Разработчики WordPress ввели новый API REST, как говорится для того, чтобы как то получать данные из сайта в виде json. Зачем, почему и как, никому не интересно, но вот результат сия нововведения, огорчил очень много владельцев блогов.

    Похожее:

  • Ошибка google talk андроид
  • Ошибка датчика расхода воздуха
  • Ошибка 29 при восстановлении iphone 3gs
  • Ошибка fatal error lnk1120 1 unresolved externals
  • Ammyy ошибка regcreatekeyexa error 5
  • Vcgu.exe ошибка приложения
  • Ошибка в rust experimental the game crashed
  • Free youtube download ошибка
  • ERROR Ошибка обновления. Сообщение об ошибке: ответ не является допустимым ответом JSON. - стр. 2

    Привет, ребята,

    У меня такая же проблема. Мой веб-сайт также прошел через облачную вспышку. @scottofford, вы сказали, что установленный плагин cloudflare решит проблему. Какой плагин мне нужно выбрать? здесь есть несколько плагинов cloudflare ..

    Привет @kyrullanuar

    Итак, я запустил свой сайт для разработчиков локально, и единственный способ исправить это был здесь. Настройки> Постоянные ссылки> установите пользовательскую структуру, а затем добавьте этот / index.php /% год% /% monthnum% /% day% /% postname% /

    Как-то вроде это исправило. К сожалению, я не могу найти веб-сайт, на котором я нашел это решение.

    @kyrullanuar, если DNS вашего веб-сайта размещается через cloudflare, вы можете найти их официальный плагин WP: https://wordpress.org/plugins/cloudflare/

    Еще одна вещь, которую я сделал (и я не уверен, повлиял ли это на какой-либо эффект), заключалась в том, что я отключил постоянные ссылки в настройках WP, сохранил их, а затем снова включил постоянные ссылки.

    @scottofford @meriellloyd

    Сначала попробую поиграться с постоянной ссылкой и сообщу результат.

    Я обнаружил, что для входа в систему требуется плагин Cloudflare. К сожалению, я использую общий DNS-хостинг, управляемый хостинг-провайдером. Конечно, они не дадут мне разрешения.

    У меня сработало обновление постоянных ссылок на моем локальном хосте.

    @meriellloyd
    Я тоже новичок в wordpress.У меня была такая же проблема при добавлении или обновлении новой страницы в localhost. Я попробовал шаг ниже и прокатился на нем.
    1. Перейдите в Настройки-> Настройки постоянной ссылки.
    2. Выберите опцию в качестве имени сообщения.
    3. Сохраните изменения
    Устраняет мою ошибку.

    Та же ошибка. У меня не установлены плагины.
    «Обновление не удалось. Сообщение об ошибке: ответ не является действительным ответом JSON ».

    Я избавляюсь от ошибки только в том случае, если для параметра Permalinks установлено значение PLAIN.
    Но постоянные ссылки на простые - не лучший вариант для SEO.

    Многие люди сообщали об этой ошибке. Надеюсь, служба поддержки исправит эту ошибку как можно скорее !!!

    • Этот ответ был изменен 1 год, 4 месяца назад пользователем alphabyte.

    Я попытался изменить настройки постоянных ссылок и все еще получаю сообщение об ошибке при обновлении одного конкретного сообщения (которое, кажется, таинственным образом потеряло несколько ключевых элементов - например, термины и фрагменты поисковых запросов). Я сделал несколько сообщений без каких-либо проблем непосредственно перед и после этого конкретного сообщения, поэтому я полностью сбит с толку относительно того, что отличается от этого сообщения.Это очень расстраивает, и я не знаю, как это исправить.

    • Этот ответ был изменен 1 год, 3 месяца назад пользователем scottiev.

    Это ошибка постоянных ссылок.

    Выполните следующие действия, чтобы исправить это (объяснено здесь: https://wordpress786.com/updating-failed-error-message-the-response-is-not-a-valid-json-response/)

    1. перейдите в настройки> постоянные ссылки и снова сохраните постоянные ссылки
    2. если вы используете nginx, убедитесь, что добавлены правила wordpress для nginx
    3.если не добавлено, то добавьте их и перезапустите nginx

    Убедитесь, что у вас установлен и включен сертификат SSL, вот как я решил это

    Отключение WAF для пути * example.com / wp-json / wp / v2 * мгновенно устраняет проблемы. Ранее он не работал из-за ответа 403 из-за CF.
    Я надеюсь, что это поможет кому-то здесь.

    Возникла эта ошибка. Также было неприятно иметь индекс.php в середине URL-адреса. Я безуспешно перепробовал все опубликованные исправления, включая плагин Cloudflare. В конце концов, исправление было в apache2.conf - изменено AllowOveride на All для / и / var / www и перезапущен Apache. Затем установите постоянные ссылки на /% postname% /, и все сработало.

    Недавний опыт, может помочь другим.
    Недавно я создал новую установку WP на своем тестовом сервере (в моей локальной сети).
    Когда я буду достаточно доволен, я перенесу это на свой рабочий сервер, а не в локальную сеть.
    Я собирался начать работу над сайтом, но обновление 5.4 было готово; так позвольте этому пройти.
    Все выглядело нормально для входа в систему, но когда я пошел редактировать и обновить элементы, я получал ошибку JSON. Конечно, как и было предложено, переход на классический редактор, похоже, исправил это (немного разочаровал).
    Продолжая, я заметил, что мои постоянные ссылки не работают (нормально на обычном). Прочтите конфиги .htaccess, mod_rewrite, Apache2. Я думал, что точно смотрел на все это в предыдущих проектах.
    >> В конце концов выяснилось, что URL-адреса сайта были неправильно заданы. <<
    Поскольку это был тестовый сервер, я получил доступ к сайту через локальный IP-адрес xx.xx.xx.xx / votw
    Во время начальной установки / setup WP также поместил это в URL-адреса сайтов.
    Чтобы решить эту проблему, я создал запись в файле моих локальных хостов, используя окончательное доменное имя, но без www. часть. Это позволяет мне получить доступ к тестирующему серверу, используя правильный URL (без www), или к производственному серверу, включив www.Это не повлияет на кого-либо, кроме машины, которую я использую, они просто перейдут на рабочий сервер в соответствии с DNS.
    >> Это позволило мне разместить правильный URL на моем локальном тестовом WP-сайте <<
    Теперь все работает нормально; нет ошибки JSON, я могу вернуться к использованию редактора блоков, и мои постоянные ссылки работают с любыми настройками.

    Всем привет! У меня уже несколько месяцев возникает эта проблема с моим сайтом https://bigseoplus.com и с сайтами нескольких клиентов, но я могу публиковать (несмотря на ошибку), я имею в виду, что это было утомительно, но это не сделало ничего невозможного для меня.До сегодняшнего дня я решил найти решение этой проблемы, которая уже раздражает, и я нашел все эти ответы.

    Я пробовал многие из предложенных здесь решений, но ни одно из них не помогло мне. Конечно, активация плагина «No Gutenberg» не является полностью решением проблемы, потому что редактор блоков имеет много преимуществ по сравнению с классическим редактором WordPress.

    В любом случае, после долгого тестирования я нашел решение, отключив все плагины и проверив, не вызывают ли какие-либо из них проблемы.В моем случае проблема была в колибри. Итак, чтобы сделать некоторые выводы, я установил другие плагины этого стиля, и с некоторыми из них ошибка начала появляться снова, что заставляет меня думать, что, возможно, ошибка связана с этим типом плагинов.

    В заключение, плагин, которому я мог позволить выполнять функцию оптимизации кеша и не генерировать ошибку JSON, был Autoptimize.

    Надеюсь, вся эта информация будет полезна для всех!

    Ошибка публикации. Сообщение об ошибке: ответ не является допустимым ответом JSON

    Добавьте плагин classic-editor, чтобы избежать этой ошибки
    https: // wordpress.org / плагины / классический редактор /

    Та же проблема с WordPress 5.3.2. Ничего не будет сохранено или опубликовано из-за ошибки «Ответ не является допустимым ответом JSON». Не только это, но и при публикации поста не было доступа к полям слагов или категорий постов.

    Установка плагина классического редактора решила все проблемы (а также восстановила доступ к полю заголовка и полям категорий).

    Итак, вопрос в том, когда WordPress выпустит исправление для того, что явно кажется системной ошибкой?

    Классический редактор не является решением, если мы пытаемся использовать готовый WordPress, который основан на Гутенберге.(Для протокола, я ненавижу Гутенберга, но я знаю, что в какой-то момент это будет единственный вариант, поэтому я беру его на себя.)

    В моем случае это свежая установка версии 5.3.2, которую я использую для восстановления небольшого веб-сайта с нуля. Исходный сайт работает нормально - две установки находятся на одном сервере и используют одну и ту же тему и плагины; единственное различие, о котором я знаю, заключается в том, что новый сайт (естественно) находится в подкаталоге, пока я его создаю.

    Он работает, если для параметра Permalinks установлено значение Plain, но когда я перемещаю его в корневой каталог, мне нужны Permalinks.

    Ошибка публикации. Ответ не является действительным ответом JSON. Почему у меня всегда появляется эта ошибка всякий раз, когда я публикую свой пост. Я могу исправить эту ошибку.

    Просто обновите настройки постоянной ссылки. Это работа для меня.

    Ничего из вышеперечисленных предложений не помогло.
    Когда у меня есть сообщение или страница, я МОГУ сохранить его, если в нем нет кода iframe или кода кнопки с URL-адресом.
    В тот момент, когда я добавляю iframe или что-то вроде http: // & # 8230 ;.. Я получаю эту ошибку.
    У меня есть членский сайт с 90 видео на Amazon S3, поэтому каждый пост или страница содержит такой код.
    Что я могу сделать?
    О, и Woocommerce уже находится в последней версии, так что у нее также было серьезное обновление, и я не могу вернуться к WP 5.1.
    Есть блестящие решения?

    «Просто обновите настройки постоянной ссылки. Это работа для меня ».

    Это тоже сработало для меня, большое спасибо @taramandi

    Нет, у меня ничего не упоминалось в комментариях (как упоминалось ранее).Угадай, что? У моего провайдера есть опция под названием «PhP Boost». Через 2 часа после того, как я выбрал эту опцию, я смог сохранить каждую созданную мной страницу и сообщение. На ВСЕХ (!!) моих сайтах. Было ли это PhP Boost, это был кофе, который я пил, пытаясь расслабиться от этой суеты, это был двухчасовой отдых, или это было все то, что я тестировал, и все вышеупомянутое? К сожалению, я никогда не узнаю.

    Вы можете просто исправить эту ошибку, изменив постоянную ссылку.

    Проверьте это руководство, если не удается исправить
    https: // areawala.com / topten / публикация-сбой /

    sauravhny (@sauravhny)
    Добавьте плагин classic-editor, чтобы избежать этой ошибки
    https://wordpress.org/plugins/classic-editor/

    Спасибо! Это сработало для меня. Хотел бы я понять почему. Означает ли это, что мне нужно продолжать работу этого плагина?

    У меня такое же сообщение об ошибке. В настоящее время у меня нет действующего веб-сайта; Я запускаю сервер Apache на моем ПК с использованием XAMPP (в моем случае LAMPP, находящийся в Linux).

    Я исправил ошибку, разрешающую публикацию страниц, сообщений в блогах и т. Д., Изменив постоянные ссылки на мои любимые настройки (Название сообщения) ->

    Затем скопируйте код в поле под кнопкой «Сохранить». Это правила mod_rewrite, и они должны войти в ваш файл .htaccess на вашем сервере ->

    Так как я запускаю свой собственный локальный сервер, это был случай, когда я зашел в папку htdocs программного обеспечения стека LAMPP, создав новый файл с именем .htaccess (по умолчанию его там не было).Затем вставьте код в новый файл .htaccess, сохраните его, и все готово.

    Поскольку большинство из вас, вероятно, запускают живые сайты на своем веб-хостинге , вы, вероятно, можете сделать то же самое через диспетчер файлов на своей cPanel. Создайте или найдите .htaccess в вашей общедоступной папке, где находятся ваши веб-сайты ->

    Или вы можете связаться со своей веб-хостинговой компанией и отправить запрос в службу поддержки с просьбой включить для вас mod_rewrite. ->

    Это достаточно просто сделать самому, поскольку WordPress предоставляет вам нужный код - просто скопируйте и вставьте его в свой.htaccess для соответствующего веб-сайта. (Или создайте файл, если его еще нет - ПОМНИТЕ, чтобы показать скрытые файлы, если он есть, но скрыт.)

    Таким образом, вы можете сохранить Гутенберга, а не прибегать к классическому редактору.

    Удачи!

    Это сработало для меня:

    Обновил WP до последней версии.
    Обновленные плагины.
    Убедился, что у меня правильная версия PHP (в моем случае 7.2, потому что 7.0, 7.1 устарели, а 7.3 иногда выдает некоторые ошибки на виртуальном хостинге).
    Зашел в настройки постоянных ссылок, там уже было имя сообщения, но все равно нажал ОК.
    Хард обновил страницу.

    Модифицировал страницу, добавив несколько ключевых слов, и это сработало.

    Некоторые шаги могут не потребоваться, но обновление PHP и WP в любом случае является правильным способом поддержки сайта.

    удачи!

    • Этот ответ был изменен 11 месяцев, 1 неделю назад пользователем catalinfx.

    Я попробовал все вышеперечисленное, но ничего не помогло.WordPress всегда указывал мне путь. На странице постоянных ссылок в верхней части страницы было сообщение с просьбой обновить мой файл . index \.php $ - [L]
    RewriteCond% {REQUEST_FILENAME}! -f
    RewriteCond% {REQUEST_FILENAME}! -d
    RewriteRule. /localhost/index.php [L]

    • Этот ответ был изменен 11 месяцев, 1 неделю назад пользователем sonofadoc.
    • Этот ответ был изменен 11 месяцев, 1 неделю назад пользователем sonofadoc.

    К сожалению, ни одно из этих предложений не помогло мне.
    Я могу добавить новую страницу с помощью плагина классического редактора, но тогда ссылка не работает (и отображается сообщение об ошибке 404).Единственная опция «Постоянные ссылки», позволяющая мне успешно создать новую страницу, - это настройка «Обычная». [используется новая установка с темой по умолчанию и никакие плагины не активированы / используются сертификаты Let's Encrypt на управляемом вручную веб-сайте для включения HTTPS]

    В моем случае я обнаружил, что моя установка Apache использовала .com для директивы «Directory», когда моим новым доменным именем было .app (я правильно изменил TLD VirtualHost, но не каталог).

    Это означало, что постоянная ссылка вообще не работала, поскольку магический код, показанный sonofadoc, никогда не был виден Apache2.

    Как только я исправил TLD, все заработало как шарм.

    Как исправить ошибку «ответ не является действительным ответом JSON» в WordPress

    Вы создаете контент в редакторе WordPress, но документ не обновляется. Фактически, вы видите сообщение об ошибке « Обновление не выполнено. Сообщение об ошибке: ответ не является допустимым ответом JSON ». Прежде чем впадать в панику, позвольте мне заверить вас, что эту ошибку можно легко устранить, и вы не потеряете свой тяжелый труд.

    Эта ошибка - одна из распространенных ошибок WordPress, с которыми пользователи сталкиваются на своих сайтах.

    Почему возникает ошибка «ответ не является действительным ответом JSON»?

    Причин возникновения этой ошибки может быть несколько. В этом посте рассматривается каждая причина и предлагается несколько решений проблемы.

    Отключить редактор блоков и вернуться к классическому редактору

    Старый по-прежнему золотой в WordPress

    Ошибка «Обновление не удалось. Сообщение об ошибке: ответ не является допустимым ответом JSON.»В подавляющем большинстве случаев можно увидеть в новом редакторе блоков под названием Gutenberg.

    Самый простой способ устранить ошибку обновления - отключить Gutenberg и вернуться к классическому редактору. Как говорится, старое золото.

    Для этого вы можете установить плагин Classic Editor. После того, как вы активировали плагин, попробуйте сохранить свои сообщения. Теперь вы не должны видеть никаких сообщений об ошибках.

    Но что, если вы все еще хотите использовать редактор блоков?

    Хороший вопрос. Может случиться так, что возврат к классическому редактору не подходит для вас.В этом случае вам следует следить за тем, что мы делаем на PassionWP. Установив классический плагин редактора и активировав , перейдите в Настройки > Запись .

    Теперь выберите классический редактор в качестве «редактора по умолчанию для всех пользователей», сохраните изменения и очистите кеш веб-сайта. Сразу после этого выберите редактор блоков в качестве редактора по умолчанию и снова сохраните изменения.

    Настройки плагина Classic Editor

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

    В этом случае нажмите Ctrl + S (Cmd + S для Mac), чтобы вручную сохранить изменения. Это решение работает для нас, и мы используем редактор блоков, не сталкиваясь с ошибкой ответа JSON.

    https://passionwp.com/wordpress-error-fixing-service/

    Ошибка смешанного содержимого из-за использования сертификата SSL

    Другой распространенной причиной этой ошибки является использование сертификата уровня защищенных сокетов (SSL) (HTTPS) на вашем сайте WordPress.Использование сертификата SSL может привести к тому, что часть контента будет доставляться небезопасно по протоколу HTTP, даже если остальная часть контента доставляется безопасным способом по протоколу HTTPS.

    Это приводит к ошибке смешанного содержимого , при которой содержимое https и https одновременно передается в веб-браузер, обычно в Google Chrome.

    Как решить ошибку смешанного содержимого в WordPress?

    Мы исследовали ошибку смешанного содержимого и заметили, что она связана с использованием плагина Really Simple SSL, который используется более чем 3 миллионами пользователей WordPress для настройки https на своих веб-сайтах.

    Чтобы устранить ошибку «ответ не является допустимым ответом JSON» или ошибку смешанного содержимого, перейдите в «Настройки »> «SSL ». Это откроет настройки плагина. Теперь перейдите на вкладку Настройки .

    Здесь вы должны сделать следующие две вещи :

    1. Убедитесь, что параметр «Исправление смешанного содержимого» включен. Это предотвращает проблемы со смешанным содержанием на вашем веб-сайте, о которых мы говорили выше.
    2. Далее следует включить параметр «Использовать альтернативный метод исправления смешанного содержимого».Это гарантирует, что ошибка «ответ не является действительным ответом JSON» не возникнет внезапно во время редактирования.
    Really Simple SSL settings

    После сохранения изменений вернитесь к сообщению, над которым вы работали, и попробуйте сохранить сообщение или страницу. Вы больше не должны испытывать ошибку , ответ не является допустимым ответом JSON. Ошибка .

    Альтернативные решения для ответа недействительный ответ JSON ошибка

    Деактивируйте все плагины на вашем сайте и отредактируйте контент обычным образом.Если вы используете плагин Really Simple SSL, сначала отключите его. Впоследствии попробуйте сохранить документ. Если вы можете сохранить его без каких-либо ошибок, повторно активируйте плагины один за другим, чтобы проверить, какой плагин вызвал ошибку.

    Есть еще одно решение, которое вы можете попробовать исправить: ответ не является допустимой ошибкой ответа JSON в WordPress.

    Перейдите к Настройки> Постоянные ссылки . Измените структуру постоянных ссылок с пост-имени или текущей структуры на Plain i.е. https://yoursite.com/?p=123. Теперь попробуйте сохранить свой пост / страницу. Проблема должна была быть решена.

    Настройки постоянных ссылок WordPress

    Но попробуйте это решение, если все другие методы не сработают. , поскольку изменение постоянных ссылок приведет к огромным проблемам с SEO на работающем веб-сайте, и вам также потребуется добавить несколько перенаправлений.

    Мы обсудили 4 возможных решения проблемы, когда ответ не является допустимым ответом JSON в WordPress. Я надеюсь, что один из этих методов сработал для вас. Если да, дайте мне знать в комментариях ниже.Если этого не произошло, опубликуйте свою конкретную проблему, чтобы другие могли предложить другие решения.

    Вы также можете разрешить нам исправить ошибку неверного ответа JSON, используя нашу службу исправления ошибок WordPress.

    Другие полезные руководства по устранению неполадок:

    2 Исправления: Ошибка - ответ не является действительным ответом JSON

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

    Как правило, при загрузке изображений в WordPress можно обнаружить множество ошибок.

    Это было довольно странно. Вот как это выглядит !

    Это было ново даже для меня. Я исследовал несколько форумов об этом же, и большинство людей сталкивается с этим в последние дни.

    Ошибка загрузки изображения в редакторе Gutenberg

    Хотя Gutenberg является революционным и поставляется с множеством функций, а подключаемые модули блоков Gutenberg являются отличным дополнением к сообществу.По мнению некоторых, это новая ошибка WordPress Gutenberg. Возможно, REST API не работал при загрузке изображений. И у других тоже есть другие причины.

    Но кто может дождаться обновлений и исправления бага?

    Вопрос: как решить проблему «ответ не является допустимым ответом JSON в WordPress»?

    Нам нужно решение. При устранении этой проблемы. Мне пришлось проверить наличие внутренней проблемы, я установил плагин Health Check, чтобы выяснить, что ее вызывает.Но это не приблизило меня к расследованию.

    Наконец, я нашел два обходных пути, оба работают хорошо, и вы можете избавиться от этой ошибки.

    Исправление 1 - Ответ не является действительным ответом JSON

    Избавиться от этой ошибки и успешно загрузить изображения очень просто.

    Шаг 1 . Выберите Добавить изображение из вашего блока Гутенберга.

    Шаг 2 . Теперь вместо того, чтобы нажимать кнопку «Загрузить», как это обычно бывает для загрузки изображения, выберите «Выбрать медиа-библиотеку».

    Шаг 3 . В этом окне перейдите на вкладку Загрузить файлы - Выберите файлы . И просмотрите изображение с вашего локального диска.

    Удивительно, но этот шаг позволит вам вставить изображения без ошибок. 🙂

    Тем не менее, это не постоянное решение, а идеальный обходной путь, если вы не хотите останавливать свою работу до тех пор, пока WordPress не выпустит следующее обновление или патч.

    Если вы хотите получить решение для всех постоянных ошибок изображения.Следующий метод, который устранит ошибку , - это недопустимый ответ JSON .


    Метод 2 - Избегайте ошибки при загрузке изображений в WordPress

    Это даже просто, все, что вам нужно сделать, это установить плагин, доступный в Github, и ошибки больше не будет.

    Шаг 1 . Скачать плагин Default to GD WordPress Plugin

    Шаг 2 . Установите плагин на свой сайт WordPress…

    Шаг 3 .Вы все настроены, никаких изменений не требуется.

    Один из обходных путей однозначно решит проблему с загрузкой изображения.

    Примечание: Хорошо, если вы выполнили все вышеперечисленное, и проблема не решена.

    Хм .. На этом этапе вы должны отказаться от редактора Гутенберга, пока он не будет исправлен WordPress.

    Единственное, что вы могли сделать, это вернуться к классическому плагину редактора. Установите и проблема будет устранена.

    Вам нравится трюк с загрузкой изображений?

    Я лично пробовал этот метод на своем сайте, и оба работали у меня.Я теперь избавился от ответа, не является допустимой ошибкой ответа JSON.

    Фактически, метод плагина решит все ошибки изображения, возникающие при загрузке изображения на ваш сайт WordPress.

    1. Предупреждение: неверный ответ JSON

    Предупреждение от DataTables о «Недопустимом ответе JSON» - одна из наиболее распространенных ошибок, которые могут возникнуть с DataTables. К счастью, довольно легко диагностировать, что идет не так, с помощью инструментов разработчика, встроенных в современные веб-браузеры.В этом руководстве показано, что именно означает ошибка, как диагностировать проблему и как ее решить.

    Значение

    При загрузке данных с помощью Ajax ( ajax ) DataTables по умолчанию ожидает, что загруженные данные будут действительным JSON. JSON - это формат обмена данными, который должен быть чрезвычайно популярен в Интернете из-за его совместимости с Javascript, простоты использования и того факта, что он легко читается человеком. Однако, как и во всех форматах обмена данными, у него есть строгие правила относительно того, что является допустимым JSON.Все, что не соответствует этому критерию, является недопустимым JSON и вызовет ошибку в DataTables, где ожидается JSON.

    Когда DataTables показывает сообщение:

    DataTables предупреждение: table id = {id} - Неверный ответ JSON.

    означает именно то, что написано. DataTables отправил Ajax-ответ серверу для данных JSON, но данные, которые он получил обратно, не были действительным JSON.

    Диагноз

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

    Данные сервера

    Современные браузеры поставляются со встроенными инструментами разработчика, которые можно использовать, чтобы узнать, какими данными сервер отвечает на запрос DataTables Ajax. Инструкции о том, как это сделать в вашем браузере, приведены ниже.

    Safari

    1. Откройте настройки

    2.Включить меню разработчика

    3. Показать ресурсы страницы

    4. Ответ Ajax

    1. По умолчанию Safari скрывает встроенные инструменты разработчика. Если у вас нет меню Develop , отображаемого в Safari, его необходимо включить. Если да, переходите к шагу 3.
      • Откройте меню Safari и выберите Настройки ...
    2. Включить меню разработчика на вкладке Advanced
      • Щелкните вкладку Advanced в окне настроек
      • Установите флажок Показать меню «Разработка» в строке меню. параметр
      • .
      • Закройте настройки - теперь будет показано меню Develop, .
    3. Просмотр ресурсов, загруженных страницей
      • Выберите опцию Показать ресурсы страницы в меню Develop .
      • Консоль разработчика отобразится внизу страницы
      • Перезагрузите страницу, чтобы Safari мог захватывать все сетевые запросы
    4. Отображаются сведения о запросе Ajax.
      • Safari покажет список всех ресурсов (изображений, скриптов и т. Д.), Которые были загружены для страницы. Найдите запрос Ajax, отправленный серверу, и щелкните его. Safari покажет подробную информацию о запросе.
      • Обратите внимание, что на страницах с большим количеством ресурсов Safari сгруппирует ресурсы по типу в папки.Если это происходит на вашем сайте, поищите в папке «XHRs» запросы Ajax.

    Обратите внимание, что эти инструкции были написаны для Safari 7 в качестве используемой версии. В более новых версиях шаги могут немного отличаться.

    Хром

    1. Откройте отладчик

    2. Консоль отображается

    3. Показать вкладку «Сеть»

    4. Ответ Ajax

    1. Чтобы получить доступ к инструментам разработчика в Chrome:
      • Mac: перейдите к пункту меню View> Developer> Developer Tools .
      • Windows: щелкните меню Chrome (справа от адресной строки) и выберите Инструменты > Инструменты разработчика .
    2. Инструменты разработчика показаны внизу текущего окна браузера. По умолчанию Chrome будет отображать консоль Javascript.
      • Щелкните вкладку Сеть , чтобы просмотреть сетевые запросы
      • Обновите страницу, чтобы разрешить Chrome перехватывать все запросы
    3. Сетевая панель покажет все запросы, сделанные Chrome для загрузки страницы.
      • Щелкните параметр XHR в нижней части окна, чтобы уменьшить количество запросов до запросов Ajax (XHR).
      • Дважды щелкните запрос Ajax, сделанный DataTables
    4. Отображаются сведения о запросе Ajax.
      • Щелкните вкладку Response в представлении Ajax, чтобы увидеть точные данные, которые были возвращены с сервера. Это то, что нам интересно!

    Обратите внимание, что эти инструкции были написаны для Chrome 31 Mac в качестве используемой версии.В более новых версиях или на других платформах шаги могут немного отличаться.

    Firefox

    1. Откройте отладчик

    2. Сетевые запросы

    3. Ajax запрашивает

    4. Ответ Ajax

    1. Чтобы получить доступ к инструментам разработчика в Firefox:
      • Mac: откройте меню «Инструменты »> «Веб-разработчик»> «Сеть ».
      • Windows: щелкните меню Firefox (вверху слева в окне) и выберите опцию Web Developer Network .
    2. Инструменты разработчика показаны внизу текущего окна браузера.
      • Обновите страницу, чтобы Firefox мог захватывать все запросы
    3. Сетевая панель покажет все запросы, сделанные Firefox для загрузки страницы.
      • Щелкните параметр XHR в нижней части окна, чтобы уменьшить количество запросов до запросов Ajax (XHR).
      • Дважды щелкните запрос Ajax, сделанный DataTables
    4. Отображаются сведения о запросе Ajax.
      • Щелкните вкладку Reponse в представлении Ajax, чтобы увидеть точные данные, которые были возвращены с сервера. Это то, что нам интересно!

    Обратите внимание, что эти инструкции были написаны для Firefox 26 Windows в качестве используемой версии. В более новых версиях или на других платформах шаги могут немного отличаться.

    IE

    1. Откройте отладчик

    2. Элементный инспектор

    3. Показать вкладку «Сеть»

    4.Ответ Ajax

    4. Ответ Ajax

    1. Чтобы получить доступ к инструментам разработчика в IE:
      • Нажмите F12 или,
      • Щелкните меню инструментов (вверху справа, значок шестеренки) и выберите параметр Инструменты разработчика F12 .
    2. Инструменты разработчика показаны внизу текущего окна браузера. IE по умолчанию покажет дерево документов.
      • Щелкните вкладку Сеть , чтобы просмотреть сетевые запросы
    3. IE требует, чтобы сетевой трафик отслеживался специально, что мы и хотим здесь.
      • Нажмите кнопку Начать захват , чтобы захватить сетевые запросы
      • Обновите страницу, чтобы IE мог захватывать все запросы
    4. Сетевая панель покажет все запросы, сделанные IE для загрузки страницы.
      • Дважды щелкните запрос Ajax, сделанный DataTables - он, скорее всего, будет в нижней части списка запросов или рядом с ним.
    5. Отображаются сведения о запросе Ajax.
      • Щелкните вкладку Reponse body в представлении Ajax, чтобы увидеть точные данные, которые были возвращены с сервера.Это то, что нам интересно!

    Обратите внимание, что эти инструкции были написаны с использованием IE 10 в качестве используемой версии. В более новых версиях шаги могут немного отличаться.

    Opera

    1. Откройте отладчик

    2. Элементный инспектор

    3. Показать вкладку «Сеть»

    4. Ответ Ajax

    1. Чтобы получить доступ к инструментам разработчика в Opera:
      • Mac: щелкните правой кнопкой мыши или ctrl щелкните документ и выберите параметр Проверить элемент .
      • Windows: щелкните документ правой кнопкой мыши и выберите параметр Проверить элемент .
    2. Инструменты разработчика показаны внизу текущего окна браузера. Opera покажет информацию об элементе, который был нажат.
      • Щелкните вкладку Сеть , чтобы просмотреть сетевые запросы
      • Обновите страницу, чтобы Opera могла захватывать все запросы
    3. Сетевая панель покажет все запросы, сделанные Opera для загрузки страницы.
      • Щелкните параметр XHR в нижней части окна, чтобы уменьшить количество запросов до запросов Ajax (XHR).
      • Дважды щелкните запрос Ajax, сделанный DataTables
    4. Отображаются сведения о запросе Ajax.
      • Щелкните вкладку Reponse в представлении Ajax, чтобы увидеть точные данные, которые были возвращены с сервера. Это то, что нам интересно!

    Обратите внимание, что эти инструкции были написаны для Opera 18 Mac в качестве используемой версии.В более новых версиях или на других платформах шаги могут немного отличаться.

    Проверка JSON

    Получив ответ с данными Ajax от сервера, вы можете проверить JSON с помощью такого инструмента, как JSON Lint или JSON Parser. Часто ошибка в ответе JSON от сервера будет очень очевидной, но JSON Linter может оказаться очень полезным для решения менее очевидных проблем, таких как конечные запятые.

    Разрешение

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

    Как исправить ошибку WordPress Ошибка публикации. Ответ не является действительным ответом JSON. - Zen Invader

    Введение

    Эта ошибка появилась при тестовой установке WP, над которой я работал.

    Когда я попытался сохранить сообщение в WordPress, я получил следующее сообщение: Ошибка публикации. Ответ не является допустимым ответом JSON .

    Это выглядело действительно странно, поскольку я не мог сохранить ни одно сообщение или страницу, которые остались в виде черновиков с заголовком «Auto Draft».

    Также я заметил, что отсутствует логотип WP в верхнем левом углу.

    Как исправить ошибку с ошибкой публикации WP

    После некоторых исследований я обнаружил, что это можно легко исправить, восстановив постоянные ссылки.

    Итак, я вошел в систему с правами администратора WP, зашел в «Настройки»> «Постоянные ссылки» и нажал «Сохранить изменения». Но это не устранило ошибку not valid JSON response error .

    Я также нашел предложение активировать плагин Classic Editor, чтобы исправить эту ошибку публикации.Но это не сработало.

    Я проверил еще свой код, плагины (я подумал, что это конфликт плагинов, поэтому я деактивировал все, но все равно никакого результата), а также проверил свой файл .htaccess . index \.php $ - [L] RewriteCond% {REQUEST_FILENAME}! -F RewriteCond% {REQUEST_FILENAME}! -D RewriteRule. /test/index.php [L] # КОНЕЦ WordPress

    Я удалил верхнюю часть и оставил только это:

      # НАЧАТЬ WordPress
    # Директивы (строки) между «BEGIN WordPress» и «END WordPress»:
    # генерируется динамически и может быть изменен только с помощью фильтров WordPress.
    # Любые изменения в директивах между этими маркерами будут перезаписаны.
    
    
    # КОНЕЦ WordPress  

    Исправлена ​​ошибка редактирования поста!

    Итак, решение для «Ошибка публикации. Ответ не является допустимым ответом JSON». ошибка заключается в том, чтобы удалить файл .htaccess и заново создать его , перейдя в WP admin> Настройки> Постоянные ссылки и нажав кнопку «Сохранить изменения».

    Чтобы удалить.htaccess, вам нужно войти на свой FTP и удалить его оттуда. Только после этого вы восстановите постоянные ссылки.

    Заключение

    Эта ошибка может вызвать головную боль, но если вы последуете приведенным выше советам, вы сможете ее решить. Удачи!

    Устранение ошибок времени выполнения политики JSON в XML | Apigee Edge

    Вы просматриваете документацию Apigee Edge.
    См. Документацию Apigee X.

    Была ли эта инструкция по устранению неполадок полезной? Пожалуйста, дайте нам знать кликнув Отправить отзыв .

    Источник Недоступен

    Код ошибки

      steps.json2xml.SourceUnavailable
      

    Сообщение об ошибке

    {
        "вина": {
            "faultstring": "JSONToXML [ policy_name ]: Source [ source_variable ] недоступен",
            "деталь": {
                "код ошибки": "steps.json2xml.SourceUnavailable"
            }
        }
    }
     

    Пример ошибки

      {
        "вина": {
            "faultstring": "JSONToXML [Convert-JSONToXML]: исходный ответ недоступен",
            "деталь": {
                "код ошибки": "шаги.json2xml.SourceUnavailable "
            }
        }
    }
      

    Причина

    Эта ошибка возникает, если переменная сообщения, указанная в элементе политики JSON to XML:

    • Вне области (недоступно в конкретном потоке, в котором выполняется политика) или
    • Не удается разрешить (не определено)

    Например, эта ошибка возникает, если предполагается, что политика JSON в XML будет выполняться в потоке запроса, но элемент установлен на переменную ответа , которая не существует в потоке запроса. .

    Диагностика

    1. Укажите политику JSON в XML, в которой произошла ошибка, и имя недоступной переменной. Вы можете найти оба этих элемента в элементе faultstring ответа об ошибке. Например, в следующей строке ошибки имя политики - Convert-JSONToXML , а переменная - , ответ :

      .
        "faultstring": "JSONToXML [Convert-JSONToXML]: исходный ответ недоступен"
        
    2. В неудачном XML-политике JSON to XML убедитесь, что имя переменной, установленной в элементе , совпадает с именем переменной, указанным в строке ошибки (шаг №1 выше).Например, следующая политика JSON to XML указывает переменную с именем response в элементе , который соответствует тому, что находится в строке ошибки :

        
      
           Convert-JSONToXML 
          <Свойства />
          <Опции>
               NULL 
               #namespaces 
           $ по умолчанию 
              : 
               #text 
               #attrs 
               @ 
               _ 
               Корень 
               Массив 
               Элемент 
          
           запрос 
           ответ 
      
        
    3. Определите, определена ли переменная, используемая в элементе , и доступна ли она в потоке, в котором выполняется политика JSON в XML.

    4. Если переменная:

      • Вне области (недоступно в конкретном потоке, в котором выполняется политика) или
      • Не удается разрешить (не определено)

      , значит, это причина ошибки.

      В качестве примера предположим, что показанная выше политика JSON в XML должна выполняться в потоке запроса . Напомним, что переменная ответа используется в элементе политики JSON to XML.Переменная ответа доступна только в потоке ответов.

      Поскольку переменная ответа не существует в потоке запроса, вы получаете код ошибки:

        steps.json2xml.SourceUnavailable
        

    Разрешение

    Убедитесь, что переменная, установленная в элементе отказавшей политики JSON в XML, определена и существует в потоке, в котором выполняется политика.

    Чтобы исправить приведенный выше пример политики JSON в XML, вы можете изменить элемент , чтобы использовать переменную запроса , поскольку она существует в потоке запроса:

      
      
           Convert-JSONToXML 
          <Свойства />
          <Опции>
               NULL 
               #namespaces 
               $ по умолчанию 
              : 
               #text 
               #attrs 
               @ 
               _ 
               Корень 
               Массив 
               Элемент 
          
           запрос 
           запрос 
      
      

    ExecutionFailed

    Код ошибки

      шагов.json2xml.ExecutionFailed
      

    Сообщение об ошибке

    {
       "вина": {
            "faultstring": "JSONToXML [ policy_name ]: Выполнение не удалось по причине: Ожидание {или [в строке 1",
            "деталь": {
                "код ошибки": "steps.json2xml.ExecutionFailed"
            }
        }
    }
     

    Возможные причины

    Возможные причины этой ошибки:

    Причина: Отсутствует входная полезная нагрузка

    В политике JSON в XML, если содержимое (полезная нагрузка) переменной, указанной в элементе , пусто, возникает эта ошибка.

    Например, если элемент в политике JSON to XML установлен как переменная запроса или ответа , и они должны содержать полезные данные JSON, но если полезные данные пусты, то ошибка имеет место.

    Диагностика

    1. Определите политику JSON в XML, в которой произошла ошибка. Вы можете найти эту информацию в элементе faultstring ответа об ошибке. Например, в следующей строке сбоя имя политики - Convert-JSONToXML :

        "faultstring": "JSONToXML [Convert-JSONToXML]: Выполнение не удалось по причине: Ожидание {или [в строке 1"
        
    2. Изучите элемент в неудачном XML-политике JSON to XML и определите указанную переменную.Например, в следующей политике JSON to XML элемент установлен на запрос :

        
      
       Convert-JSONToXML 
      <Свойства />
      <Опции>
           NULL 
           #namespaces 
           $ по умолчанию 
          : 
           #text 
           #attrs 
           @ 
           _ 
           Корень 
           Массив 
           Элемент 
      
       запрос 
       запрос 
      
        
    3. Проверьте, пуста ли переменная, указанная для элемента в политике.Если он пуст, то это причина ошибки.

      В приведенном выше примере политики JSON в XML полезная нагрузка запроса (то есть тело запроса), отправленная клиентом, пуста.

      Например:

        curl -v "http: //  -  .apigee.net / v1 / testjsontoxml" -H "Content-Type: application / json"
        

      Поскольку полезная нагрузка ответа JSON пуста, вы получаете код ошибки:

        steps.json2xml.ExecutionFailed
        

      Эта ошибка также может возникать, если элемент настроен на ответ, но внутренний сервер передает пустую полезную нагрузку.

      Примечание. Заголовок HTTP Content-Type исходного сообщения должен иметь значение application / json ; в противном случае политика пропускается во время обработки и поэтому не применяется.

    Разрешение

    Убедитесь, что входные данные, переданные в политику JSON to XML в элементе , являются допустимыми полезными данными JSON и не являются пустыми.

    Чтобы устранить проблему с примером политики JSON to XML, передайте допустимые полезные данные JSON. Например:

    1. Создайте файл с именем city.json со следующим содержимым:

        {
        «Имя»: «Апиги»,
        «Город»: «Бангалор»,
        «Пинкод»: «560016»
      }
        
    2. Выполните вызов API с помощью команды cURL, как показано ниже:

        curl -v "http: //  -  .apigee.net / v1 / testxmltojson" -H "Content-Type: application / json" -X POST -d @ company.json
        

    Причина: неверный или неверно сформированный ввод

    Если политика JSON в XML анализирует недопустимые или искаженные входные данные, вы получаете эту ошибку.

    Например, если следующий недопустимый JSON предоставлен в качестве входных данных для политики JSON to XML,

      [
        "аргументы": ["имя": "Google"]
    ]
      

    вы получите ошибку:

      "faultstring": "JSONToXML [Convert-JSONToXML]: Выполнение не удалось по причине: Ожидание {или [в строке 1"
      

    Диагностика

    1. Определите политику JSON в XML, в которой произошла ошибка. Вы можете найти эту информацию в элементе faultstring ответа об ошибке.Например, в следующей строке сбоя имя политики - Convert-JSONToXML :

        "faultstring": "JSONToXML [Convert-JSONToXML]: Выполнение не удалось по причине: Ожидание {или [в строке 1"
        
    2. Проверьте элемент , указанный в неудачном XML-политике JSON to XML. Например, следующая политика JSON to XML имеет элемент , установленный на , переменная запроса :

        
      
         Convert-JSONToXML 
        <Свойства />
        <Опции>
             NULL 
             #namespaces 
             $ по умолчанию 
            : 
             #text 
             #attrs 
             @ 
             _ 
             Корень 
             Массив 
             Элемент 
        
         запрос 
         запрос 
      
        
    3. Проверить, являются ли входные данные, указанные в элементе , допустимыми полезными данными JSON.Если ввод неверен или имеет неправильный формат, то это причина ошибки.

      Предположим, что следующий недопустимый JSON был передан политике

        [
          "аргументы": ["имя": "Google"]
      ]
        

      Вот пример вызова API, который показывает, как был передан запрос:

        curl -v "http: //  -  .apigee.net / v1 / testjsontoxml" -H "Content-Type:
      application / json "-X POST -d '[" args ": [" name ":" Google "]]'
        

      Полезные данные JSON, переданные в запросе, недействительны, поскольку объект JSON запускается. и заканчивается квадратными скобками ([]).По этой причине вы получаете код ошибки:

      .

      steps.json2xml.ExecutionFailed

      Примечание. Полезная нагрузка JSON может содержать объекты JSON и / или массивы JSON. Допустимый объект JSON начинается с {и заканчивается}. Допустимый массив JSON (на самом внешнем уровне), который начинается с [и заканчивается].

      Эта ошибка также может возникать, если элемент был настроен на ответ, но полезные данные ответа JSON недействительны или имеют неправильный формат.

      Примечание. Заголовок HTTP Content-type исходного сообщения должен иметь значение application / json , в противном случае политика не применяется, то есть пропускается во время обработки.

    Разрешение

    Убедитесь, что входные данные, переданные в политику JSON to XML в элементе , действительны и не имеют неправильного формата.

    Чтобы устранить проблему с примером политики JSON в XML, описанной выше, передайте действительный запрос полезной нагрузки JSON следующим образом:

      {
      "args": {
    
            "name": "Google"
       }
    }
      

    OutputVariableIsNotAvailable

    Код ошибки

      steps.json2xml.OutputVariableIsNotAvailable
      

    Сообщение об ошибке

    {
        "вина": {
            "faultstring": "JSONToXML [ policy_name ]: Выходная переменная недоступна.",
            "деталь": {
                "код ошибки": "steps.json2xml.OutputVariableIsNotAvailable"
            }
        }
    }
     

    Пример ошибки

      {
        "вина": {
            "faultstring": "JSONToXML [Check-JSONToXML]: Выходная переменная недоступна.",
            "деталь": {
                "код ошибки": "шаги.json2xml.OutputVariableIsNotAvailable "
            }
        }
    }
      

    Причина

    Эта ошибка возникает, если переменная, указанная в элементе политики JSON to XML, имеет строковый тип, а элемент не определен. Элемент является обязательным, если переменная, определенная в элементе , имеет строковый тип.

    Примечание: не является обязательным, если элемент относится к типу message.

    Диагностика

    1. Определите политику JSON в XML, в которой произошла ошибка. Вы можете найти это в элементе faultstring ответа об ошибке. Например, в следующей строке ошибки имя политики - Check-JSONToXML :

      .
        «faultstring»: «JSONToXML [Check-JSONToXML]: выходная переменная недоступна».
        
    2. В неудачной политике JSON to XML проверьте, отсутствует ли .

      В следующем примере политики JSONToXML отсутствует элемент :

        
      
           Проверить-JSONToXML 
          <Свойства />
          <Опции>
               NULL 
               #namespaces 
               $ по умолчанию 
              : 
               #text 
               #attrs 
               @ 
               _ 
               Корень 
               Массив 
               Элемент 
          
           PostalCode 
      
        
    3. Определить тип переменной, указанной в элементе :

      1. Найдите код в прокси API, где переменная была определена первой.
      2. После того, как вы выясните политику, в которой сначала определяется и заполняется переменная, вам необходимо определить тип этой переменной следующим образом:
        1. Проверьте значение атрибута типа (если есть).
        2. Если атрибут типа отсутствует, переменная считается строкой.
      3. Если тип переменной - строка, то это причина ошибки. Вы можете узнать об общих переменных и их типах в справочнике по переменным.

      Например, посмотрите на переменную PostalCode в приведенной выше политике JSON to XML.

      В качестве примера рассмотрим, что политика «Назначить сообщение» используется для присвоения значения переменной с именем PostalCode , как показано ниже:

        
      
           Assign_PostalCode 
          <Свойства />
          
               PostalCode 
               {"значение": "56008"} 
              <Ссылка />
          
           true 
          
      
        

      Обратите внимание, что тип переменной, установленный в , является строковым.Таким образом, переменная PostalCode имеет строковый тип.

      Теперь напомним, что переменная PostalCode используется в элементе политики JSONToXML:

         PostalCode 
        

      Поскольку PostalCode имеет строковый тип, а элемент отсутствует, вы получаете код ошибки:

        steps.json2xml.OutputVariableIsNotAvailable
        

    Разрешение

    Убедитесь, что если переменная, указанная в элементе политики JSONToXML, имеет строковый тип, элемент определен в политике.

    Чтобы исправить описанную выше политику JSONToXML, включите элемент , как показано ниже.

      
      
           Проверить-JSONToXML 
          <Свойства />
          <Опции>
               NULL 
               #namespaces 
               $ по умолчанию 
              : 
               #text 
               #attrs 
               @ 
               _ 
               Корень 
               Массив 
               Элемент 
          
           ответ 
           PostalCode 
      
      

    InCompatibleTypes

    Код ошибки

      шагов.json2xml.InCompatibleTypes
      

    Сообщение об ошибке

    {
        "вина": {
            "faultstring": "JSONToXML [ policy_name ]: строка не может быть назначена типу сообщения.",
            "деталь": {
                "код ошибки": "steps.json2xml.InCompatibleTypes"
            }
        }
    }
     

    Пример ошибки

      {
        "вина": {
            "faultstring": "JSONToXML [JSONToXML_checktype]: строку нельзя присвоить типу сообщения.",
            "деталь": {
                "код ошибки": "шаги.json2xml.InCompatibleTypes "
            }
        }
    }
      

    Причина

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

    Допустимые типы: сообщение и строка .

    Диагностика

    1. Определите политику JSON в XML, в которой произошла ошибка. Вы можете найти это в элементе faultstring ответа об ошибке. Например, в следующей строке сбоя имя политики - JSONToXML_checktype :

        "faultstring": "JSONToXML [JSONToXML_checktype]: строку нельзя присвоить типу сообщения."
        
    2. В неудачной политике JSON to XML обратите внимание на значения, указанные в и .

      Рассмотрим следующий пример политики:

        
      
           JSONToXML_checktype 
          <Свойства />
          <Опции>
               NULL 
               #namespaces 
               $ по умолчанию 
              : 
               #text 
               #attrs 
               @ 
               _ 
               Корень 
               Массив 
               Элемент 
          
           ответ 
           PostalCode 
      
      
        
    3. Определите тип переменной, указанной в элементах и :

      1. Найдите код в прокси API, где каждая из этих переменных была определена первой.
      2. После того, как вы выясните политику, в которой сначала определяется и заполняется переменная, вам необходимо определить тип этой переменной следующим образом:
        1. Проверьте значение атрибута типа (если есть).
        2. Если атрибут типа отсутствует, переменная считается строкой.
      3. Если тип переменной, указанной в , является строкой, а типом является сообщение или наоборот, то это причина ошибки.Вы можете узнать об общих переменных и их типах в справочнике по переменным.

      В качестве примера рассмотрим политику «Назначить сообщение», которая используется для присвоения значения переменной с именем PostalCode , как показано ниже:

        
      
           Assign_PostalCode 
          <Свойства />
          
               PostalCode 
               {"значение": "56008"} 
              <Ссылка />
          
           true 
          
      
        

      Обратите внимание, что тип переменной, установленный в , является строкой; следовательно, переменная PostalCode имеет строковый тип.

      Теперь напомним, что переменная PostalCode используется в элементе политики JSONToXML:

         PostalCode 
        

      Аналогичным образом напомним, что переменная ответа используется в элементе политики JSONToXML:

         ответ 
        

      Поскольку PostalCode имеет строковый тип, а переменная ответа имеет тип сообщения, они несовместимы, поэтому вы получаете код ошибки:

        шагов.json2xml.InCompatibleTypes
        

      Вышеупомянутая ошибка также может возникать, если переменная в элементе имеет тип message , но переменная в элементе имеет тип string.

    Разрешение

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

    Чтобы исправить описанную выше политику JSON в XML, вы можете объявить другую переменную PostalCode_output типа string с помощью политики назначения сообщений и использовать эту переменную в элементе политики JSON to XML.

    Измененная политика присвоения сообщений:

      
    
         Assign_PostalCode 
        <Свойства />
        
             PostalCode 
             {"значение": "56008"} 
            <Ссылка />
        
        
             PostalCode_output 
            <Ссылка />
        
         true 
        
    
      

    Измененная политика JSONToXML:

      
    
         JSONToXML_checktype 
        <Свойства />
        <Опции>
             NULL 
             #namespaces 
             $ по умолчанию 
            : 
             #text 
             #attrs 
             @ 
             _ 
             Корень 
             Массив 
             Элемент 
        
         PostalCode_output 
         PostalCode 
    
      

    InvalidSourceType

    Код ошибки

      шагов.json2xml.InvalidSourceType
      

    Сообщение об ошибке

    {
        "вина": {
            "faultstring": "JSONToXML [class  invalid_class ]: недопустимый класс типа источника  invalid_class . Допустимые типы источника: [сообщение, строка].",
            "деталь": {
                "код ошибки": "steps.json2xml.InvalidSourceType"
            }
        }
    }
     

    Пример ошибки

      {
        "вина": {
            "faultstring": "JSONToXML [class java.lang.Integer]: недопустимый класс исходного типа java.lang.Integer. Допустимые типы источников: [сообщение, строка]. ",
            "деталь": {
                "код ошибки": "steps.json2xml.InvalidSourceType"
            }
        }
    }
      

    Причина

    Эта ошибка возникает, если тип переменной, использованной для определения элемента , недействителен. Допустимые типы переменных: сообщение и строка .

    Диагностика

    1. Определите недопустимый тип источника, используемый в политике JSON to XML.Вы можете найти эту информацию в сообщении об ошибке. Например, в следующей ошибке недопустимым типом является Integer.

        «faultstring»: «JSONToXML [class java.lang.Integer]: недопустимый класс исходного типа java.lang.Integer. Допустимые исходные типы: [сообщение, строка]».
        
    2. Изучите все политики JSON в XML в конкретном прокси-сервере API, где произошла ошибка. В неудачной политике JSON to XML запишите имя переменной, указанной в .

      Вот пример политики, в которой переменная с именем EmployeeID указана в элементе :

      
    
         Check_SourceType 
        <Свойства />
        <Опции>
             NULL 
             #namespaces 
             $ по умолчанию 
            : 
             #text 
             #attrs 
             @ 
             _ 
             Корень 
             Массив 
             Элемент 
        
         запрос 
         EmployeeID 
    
      
    1. Определите тип переменной, указанной в элементе :

      1. Найдите код в прокси API, где эта переменная была определена первой.
      2. После того, как вы выясните политику, в которой сначала определяется и заполняется переменная, вам необходимо определить тип этой переменной следующим образом:
        1. Проверьте значение атрибута типа (если есть).
        2. Если атрибут типа отсутствует, переменная считается строкой.
      3. Если тип переменной, указанной в , не является ни сообщением, ни строковым типом, то это причина ошибки. Вы можете узнать об общих переменных и их типах в справочнике по переменным.

      В качестве примера давайте рассмотрим, что политика ExtractVariables используется для извлечения значения из полезной нагрузки JSON и устанавливает значение переменной EmployeeID целочисленного типа, как показано ниже:

        
      
           запрос 
          
              
                   $.ID 
              
          
      
        

      Теперь напомним, что переменная EmployeeID используется в элементе политики JSONToXML:

         EmployeeID 
        

      Поскольку тип этой переменной - Integer , который не является допустимым типом , прокси API не работает с ошибкой:

        шагов.json2xml.InvalidSourceType
        

    Разрешение

    Убедитесь, что тип переменной, используемой для указания элемента , равен действительный. Допустимые типы : сообщение и строка .

    Об авторе

    alexxlab administrator

    Оставить ответ