Вы просматриваете документацию по Apigee Edge.
Перейдите к документации по Apigee X. Информация
Symptom
При отправке запроса к API в реальном времени с помощью SmartDocs на портале для разработчиков произошла ошибка.
Сообщения об ошибках
Распространенная ошибка, которая появляется на портале для разработчиков, выглядит так: Произошла внутренняя ошибка. Повторите попытку позже".
Возможные причины
Эта ошибка может возникнуть, если портал разработчика не получает ответа от внутреннего сервиса (прокси-сервера smartdocs или конечной точки).
диагностика;
Включите инструменты разработчика в браузере и проверьте вкладку "Сеть", чтобы определить фактическую ошибку.
В таблице ниже перечислены распространенные ошибки и их причины.
|
Ошибка |
Типичные причины |
|
ERR_NAME_NOT_RESOLVED |
Неправильно настроенный прокси-сервер SmartDocs или ограничения сетевого брандмауэра |
|
Смешанный контент |
|
|
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, как описано ниже. Подробнее о том, как использовать инструмент трассировки…
- Включите трассировку для прокси-сервера smartdocs в организации VALIDATE, чтобы найти правило, которое возвращает ошибку 500 (внутренняя ошибка сервера).

- Выберите в трассировке нужное правило, чтобы определить причину ошибки.
Разрешение
Исправьте ошибку. Если вам нужна помощь, обратитесь в службу поддержки Apigee Edge.
Процессоры сообщений Edge не могут вызывать опубликованную конечную точку API
Ошибка 500 (внутренняя ошибка сервера) также может возникнуть, если процессоры сообщений, принадлежащие организации, в которой размещен прокси-сервер Smartdocs, не могут вызвать конечную точку API.
диагностика;
Используйте инструмент Trace, чтобы диагностировать ошибки прокси-сервера smartdocs, как описано ниже. Подробнее о том, как использовать инструмент трассировки…
- Включите трассировку для прокси-сервера smartdocs в организации VALIDATE, чтобы найти правило, которое возвращает ошибку 500 (внутренняя ошибка сервера).

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