Вы просматриваете документацию по Apigee Edge.
Перейдите к документации по Apigee X. Информация
Введение
При устранении неполадок может потребоваться выполнить API непосредственно в компонентах Apigee, таких как маршрутизатор или обработчик сообщений. Например, это может понадобиться, чтобы:
- Устранение неполадок с определенными запросами API, которые указывают на проблему с определенным компонентом Apigee (маршрутизатором или процессором сообщений).
- Собирайте больше диагностической информации, включив режим отладки для определенного экземпляра компонента Apigee.
- Исключите возможность того, что проблема вызвана определенным компонентом Apigee.
- Узнайте, оказывают ли такие операции, как создание нового экземпляра или перезапуск экземпляра, желаемый эффект.
Требования
- Прямой доступ к компонентам маршрутизатора или обработчика сообщений, в отношении которых необходимо выполнять запросы API.
- На определенном экземпляре компонента должен быть установлен инструмент cURL.
Запрос к API, который вы хотите протестировать, в формате cURL.
Например, вот команда
curl, которую можно использовать для отправки запроса к прокси-серверу API с локального компьютера:curl https://myorg-test.mycompany.com/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2'curl https://myorg-test.mycompany.com/v1/customers
Как выполнять запросы к API напрямую через маршрутизаторы Apigee
Сценарий 1. Запросы API к псевдониму хоста, указывающему на маршрутизаторы
Если запись DNS псевдонима хоста настроена так, чтобы указывать на маршрутизаторы Apigee Edge (то есть нет Elastic Load Balancer (ELB)), то вы можете использовать следующие команды curl, чтобы отправлять запросы API непосредственно маршрутизатору:
Виртуальный хост, настроенный для незащищенного обмена данными через порт 80
curl -v --resolve HOST_ALIAS:80:127.0.0.1 http://HOST_ALIAS/PROXY_BASE_PATH/ -H 'HEADER: VALUE'Пример:
curl -v --resolve myorg-test.mycompany.com:80:127.0.0.1 http://myorg-test.mycompany.com/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2'Виртуальный хост настроен на завершение SSL на порту 443 маршрутизатора.
curl -v --resolve HOST_ALIAS:443:127.0.0.1 https://HOST_ALIAS/PROXY_BASE_PATH/ -H 'HEADER: VALUE'Пример:
curl -v --resolve myorg-test.mycompany.com:443:127.0.0.1 https://myorg-test.mycompany.com/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2'
Сценарий 2. Запросы к API, отправляемые псевдониму хоста, указывающему на ELB
Если запись DNS псевдонима хоста настроена так, чтобы указывать на Elastic Load Balancer (ELB), вы можете использовать следующие команды curl для отправки запросов API непосредственно маршрутизатору:
Виртуальный хост, настроенный для незащищенного обмена данными через порт 80
curl -v --resolve HOST_ALIAS:80:127.0.0.1 http://HOST_ALIAS/PROXY_BASE_PATH/ -H 'HEADER: VALUE'Пример:
curl -v --resolve myorg-test.mycompany.com:80:127.0.0.1 http://myorg-test.mycompany.com/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2'Виртуальный хост настроен для высокого порта, а SSL завершается на балансировщике нагрузки перед маршрутизатором Apigee.
curl -v --resolve HOST_ALIAS:PORT_NUMBER:127.0.0.1 http:/HOST_ALIAS:PORT_NUMBER/PROXY_BASE_PATH/ -H 'HEADER: VALUE'Пример:
curl -v --resolve myorg-test.mycompany.com:19001:127.0.0.1 http://myorg-test.mycompany.com/v1/customers -H 'authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2'Виртуальный хост настроен для высокого порта, а SSL завершается на маршрутизаторе Apigee
Другими словами, балансировщик нагрузки настроен на использование сквозной передачи TCP на маршрутизатор Apigee.
curl -v --resolve HOST_ALIAS:PORT_NUMBER:127.0.0.1 https:/HOST_ALIAS:PORT_NUMBER/PROXY_BASE_PATH/ -H 'HEADER: VALUE'Пример:
curl -v --resolve myorg-test.mycompany.com:19001:127.0.0.1 https://myorg-test.mycompany.com/v1/customers -H 'authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2'
Как отправлять запросы напрямую процессорам сообщений Apigee
Сценарий 1. Запрос API к процессору сообщений через порт по умолчанию 8998
Порт по умолчанию, на котором обработчик сообщений прослушивает трафик от маршрутизатора Apigee, – 8998. Поэтому во всех случаях, когда этот порт не был изменен, трафик необходимо отправлять непосредственно на этот порт в определенном экземпляре обработчика сообщений, как в следующем примере. Запрос curl должен быть отправлен на URL http://INTERNAL_IP_OF_MP:8998 вместе с заголовком X-Apigee.Host со значением hostname, включающим порт, используемый в виртуальных хостах, как показано в трех примерах ниже.
Виртуальный хост настроен для завершения SSL-подключения на маршрутизаторе.
curl -v http://INTERNAL_IP_OF_MP:8998/PROXY_BASE_PATH/ -H 'HEADER: VALUE' -H 'X-Apigee.Host: HOST_ALIAS:443'Пример:
curl -v http://10.10.53.115:8998/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2' -H 'X-Apigee.Host: myorg-test.mycompany.com:443'Виртуальный хост настроен для "высокого порта", а завершение SSL происходит на балансировщике нагрузки ИЛИ на маршрутизаторе Apigee:
curl -v http://INTERNAL_IP_OF_MP:8998/PROXY_BASE_PATH/ -H 'HEADER: VALUE' -H 'X-Apigee.Host: HOST_ALIAS:PORT_NUMBER'Пример:
curl -v http://10.10.53.115:8998/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2' -H 'X-Apigee.Host: myorg-test.mycompany.com:19001'Виртуальный хост настроен на порт HTTP по умолчанию 80
curl -v http://INTERNAL_IP_OF_MP:8998/PROXY_BASE_PATH/ -H 'HEADER: VALUE' -H 'X-Apigee.Host: HOST_ALIAS:80'Пример:
curl -v http://10.10.53.115:8998/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2' -H 'X-Apigee.Host: myorg-test.mycompany.com:80'
Сценарий 2. Запрос API к обработчику сообщений через порт SSL 8443
Можно настроить связь по протоколу SSL между маршрутизатором и процессором сообщений. В следующих примерах используется порт 8443, рекомендованный в документации Apigee.
Виртуальный хост настроен для завершения SSL-подключения на маршрутизаторе.
curl -v -k https://INTERNAL_IP_OF_MP:8443/PROXY_BASE_PATH/ -H 'HEADER: VALUE' -H 'X-Apigee.Host: HOST_ALIAS:443'Пример:
curl -v https://10.10.53.115:8443/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2' -H 'X-Apigee.Host: myorg-test.mycompany.com:80'Виртуальный хост настроен для завершения SSL на балансировщике нагрузки, а трафик перенаправляется на высокий порт маршрутизатора.
curl -v https://INTERNAL_IP_OF_MP:8443/PROXY_BASE_PATH/ -H 'HEADER: VALUE' -H 'X-Apigee.Host: HOST_ALIAS:PORT_NUMBER'Пример:
curl -v https://10.10.53.115:8443/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2' -H 'X-Apigee.Host: myorg-test.mycompany.com:19001'