Внутренняя ошибка на портале для разработчиков

Вы просматриваете документацию по Apigee Edge.
Перейдите к документации по Apigee X.
Информация

Symptom

При отправке запроса к API в реальном времени с помощью SmartDocs на портале для разработчиков произошла ошибка.

Сообщения об ошибках

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

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

Эта ошибка может возникнуть, если портал разработчика не получает ответа от внутреннего сервиса (прокси-сервера smartdocs или конечной точки).

диагностика;

Включите инструменты разработчика в браузере и проверьте вкладку "Сеть", чтобы определить фактическую ошибку.

В таблице ниже перечислены распространенные ошибки и их причины.

Ошибка

Типичные причины

ERR_NAME_NOT_RESOLVED

Неправильно настроенный прокси-сервер SmartDocs или ограничения сетевого брандмауэра

Смешанный контент

Портал настроен на HTTPS, запрос SmartDocs – на HTTP

500 – внутренняя ошибка сервера

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

Неправильно настроенный прокси-сервер SmartDocs или ограничения брандмауэра сети

Сообщение ERR_NAME_NOT_RESOLVED указывает на то, что URL прокси-сервера SmartDocs настроен неправильно или сеть, из которой осуществляется доступ к порталу, не может вызвать URL прокси-сервера SmartDocs из-за ограничений брандмауэра. Прокси-сервер smartdocs должен быть доступен из интернета или внутренней сети (для внутренних API).

Разрешение

Убедитесь, что прокси-сервер SmartDocs доступен из всех необходимых сетей. Для этого разверните прокси-сервер SmartDocs на виртуальном хосте в Edge с именем хоста, доступным из интернета.

Портал настроен на HTTPS, запрос SmartDocs – на HTTP

Ошибка Смешанный контент означает, что прокси-сервер smartdocs вызывается по протоколу HTTP со страницы, загруженной по протоколу HTTPS.

Разрешение

Чтобы устранить проблему, предоставьте доступ к прокси-серверу SmartDocs по протоколу HTTPS. Для этого разверните прокси SmartDocs, чтобы включить виртуальный хост, настроенный на использование TLS/SSL (обычно это "безопасный" виртуальный хост).

Прокси-сервер SmartDocs возвращает исключение

Сообщение 500 Internal Server Error (500: внутренняя ошибка сервера) может быть вызвано проблемой с прокси-сервером smartdocs. В этом случае вы заметите, что прокси-сервер SmartDocs возвращает следующую ошибку:

диагностика;

Используйте инструмент Trace, чтобы диагностировать ошибки прокси-сервера smartdocs, как описано ниже. Подробнее о том, как использовать инструмент трассировки…

  1. Включите трассировку для прокси-сервера smartdocs в организации VALIDATE, чтобы найти правило, которое возвращает ошибку 500 (внутренняя ошибка сервера).

  1. Выберите в трассировке нужное правило, чтобы определить причину ошибки.

Разрешение

Исправьте ошибку. Если вам нужна помощь, обратитесь в службу поддержки Apigee Edge.

Процессоры сообщений Edge не могут вызывать опубликованную конечную точку API

Ошибка 500 (внутренняя ошибка сервера) также может возникнуть, если процессоры сообщений, принадлежащие организации, в которой размещен прокси-сервер Smartdocs, не могут вызвать конечную точку API.

диагностика;

Используйте инструмент Trace, чтобы диагностировать ошибки прокси-сервера smartdocs, как описано ниже. Подробнее о том, как использовать инструмент трассировки…

  1. Включите трассировку для прокси-сервера smartdocs в организации VALIDATE, чтобы найти правило, которое возвращает ошибку 500 (внутренняя ошибка сервера).

  1. В приведенном выше примере трассировки интерфейса видно, что правило JavaScript BuildTargetAPIRequest не может выполнить целевой URL.
  1. Получите целевой URL из правила JavaScript BuildTargetAPIRequest.
  1. Выполните прямой вызов URL из узлов Message Processor, связанных с организацией VALIDATE, как показано ниже:
    curl -v <target URL>
  1. Исправьте все обнаруженные ошибки.

Разрешение

  1. Убедитесь, что API, опубликованные на портале разработчика, можно вызывать из процессоров сообщений, связанных с организацией VALIDATE, и исправьте все обнаруженные ошибки.
  1. Если вы можете выполнить вызов API непосредственно из Message Processor, скорее всего, вы сможете выполнить его и через SmartDocs.
  1. Выполните вызов API через SmartDocs и проверьте, устранена ли проблема.