Вы просматриваете документацию Apigee Edge .
Перейдите в документацию Apigee X.info
В этой теме объясняется, как создавать API-прокси для веб-сервисов на основе SOAP. В Edge можно создать два типа SOAP-прокси. Один генерирует RESTful-интерфейс к бэкэнд-сервису SOAP, а другой выполняет «сквозную передачу» SOAP-сообщения на бэкэнд. Оба метода описаны в этой теме.
В этом видео представлен полный пример преобразования SOAP-сервиса в REST-сервис с помощью мастера создания API-прокси в Apigee Edge. Однако, если вам нужен больший контроль над преобразованием SOAP в REST, вы можете создать прокси с помощью политик. Для получения дополнительной информации см. Руководство: Ручное создание API-прокси для преобразования SOAP в REST в Apigee Edge .
Создание RESTful API-прокси для SOAP-сервиса
В этом разделе объясняется, как создать прокси-сервер RESTful SOAP API с опцией REST to SOAP to REST в мастере создания прокси-сервера.
Обзор
Опция REST to SOAP to REST обрабатывает WSDL для генерации RESTful API-прокси. Edge определяет из WSDL поддерживаемые операции сервиса, входные параметры и т. д. Edge «угадывает», какой HTTP-метод использовать для каждой операции. Как правило, Edge преобразует операции в GET-запросы, преимущество которых заключается в возможности кэширования. Edge также настраивает целевую конечную точку бэкэнда, которая может различаться для каждой SOAP-операции.
Для этого типа прокси-сервера Edge автоматически генерирует спецификацию OpenAPI , которую можно использовать для создания документации API.
Основные шаги
Край
Чтобы создать RESTful API-прокси для SOAP-сервиса с помощью пользовательского интерфейса Edge:
- Войдите на сайт apigee.com/edge .
- В левой панели навигации выберите «Разработка» > «API-прокси» .
- Нажмите +Прокси .
- Нажмите на SOAP-сервис .
- На странице сведений о прокси-сервере укажите файл WSDL.
Поле Описание Предоставьте WSDL-файл Выберите источник WSDL.
- Исходный веб-адрес (URL) - Введите или вставьте URL-адрес WSDL-файла.
- С моего компьютера — загрузите WSDL-файл из локальной директории. Вы можете загрузить несколько файлов, если есть зависимости.
- Нажмите «Проверить» , чтобы подтвердить WSDL-файл.
- Введите следующие данные прокси-сервера:
Поле Описание Имя Название, отображаемое для вашего API. Укажите буквенно-цифровые символы, дефис (-) или подчеркивание (_). Базовый путь Фрагмент URI, который появляется после адреса http(s)://[host] вашего API-прокси. Edge использует базовый путь URI для сопоставления и маршрутизации входящих запросов к соответствующему API-прокси.
ПРИМЕЧАНИЕ : Базовый путь API-прокси по умолчанию использует значение, указанное в поле
Name, преобразованное в нижний регистр.После базового пути следуют любые дополнительные URL-адреса ресурсов. Вот полная структура URL-адресов, которую клиенты будут использовать для вызова вашего API-прокси:
https://[host]/ base_path / conditional_flow_pathПРИМЕЧАНИЕ : Базовый путь должен быть уникальным; нельзя развернуть два API-прокси с одинаковым базовым путем. Если вы отредактируете развернутый API-прокси и установите базовый путь на то же значение, что и базовый путь другого API-прокси, Edge автоматически удалит этот API-прокси при сохранении. Прежде чем вы сможете повторно развернуть API-прокси, необходимо изменить базовый путь так, чтобы он был уникальным.
Используйте подстановочные знаки в базовых путях.
Используйте один или несколько символов подстановки
/*/в базовых путях API-прокси, чтобы обеспечить совместимость ваших API-прокси с будущими версиями. Например, базовый путь/team/*/membersпозволяет клиентам вызыватьhttps://[host]/team/ blue /membersиhttps://[host]/team/ green /membersбез необходимости создания новых API-прокси для поддержки новых команд. Обратите внимание, что/**/не поддерживается.Описание (Необязательно) Описание API. - Нажмите «Далее» .
- На странице «Общие политики» мастера настройте следующие параметры:
- Требования к авторизации в разделе «Безопасность: Авторизация» . См. раздел «Добавление безопасности» .
- Поддержка междоменного обмена ресурсами (CORS) в разделе «Безопасность: Браузер» . См. раздел «Добавление поддержки CORS» .
- Квоты для защиты вашего бэкэнд-сервиса от высокой нагрузки в разделе «Квоты» . См. раздел «Квоты» . (Недоступно, если выбрана сквозная авторизация.)
- На странице операций WSDL выберите тип API-прокси REST to SOAP to REST .
В таблице перечислены операции, которые Edge «обнаружил» в файле WSDL. Вы можете выбрать и настроить, какие операции вы хотите включить в свой API-прокси. Таблица показана на следующем рисунке.

- Выберите тип порта из раскрывающегося списка, чтобы указать, какой набор операций вы хотите использовать. В WSDL элементы типа порта определяют операции, которые можно вызывать в веб-сервисе.
- При желании можно изменить путь к REST API для операции. Этот путь будет использоваться в качестве имени ресурса в URL-адресе прокси-сервера API.
- При желании можно изменить глагол (метод HTTP), связанный с операцией.
- Нажмите «Далее» .
- На странице «Виртуальные хосты» мастера выберите виртуальные хосты, к которым будет привязываться API-прокси после развертывания. Дополнительную информацию см. в разделе «О виртуальных хостах» .
- Нажмите «Далее» .
- Выберите среду(ы) развертывания и нажмите «Создать и развернуть».
Ваш новый API-прокси создан и развернут в выбранной среде. - Нажмите «Редактировать прокси» , чтобы отобразить страницу с подробной информацией о прокси-сервере API.
Классический Edge (частное облако)
Чтобы создать RESTful API-прокси для SOAP-сервиса с использованием классического пользовательского интерфейса Edge:
- Войдите в систему по
http:// ms-ip :9000, где ms-ip — это IP-адрес или DNS-имя узла сервера управления. - В верхней панели навигации выберите API > API-прокси .
- Нажмите + API-прокси .
- В мастере создания прокси-сервера выберите службу SOAP.
- Нажмите «Далее» .
- На странице «Подробности» выберите следующие параметры. После выбора файла WSDL необходимо нажать кнопку «Проверить» .
В этой области сделайте это WSDL Выберите источник WSDL.
- URL — Введите URL-адрес WSDL-файла, который вы хотите использовать.
- Файл — выберите файл WSDL в вашей файловой системе. В случаях, когда имеются дополнительные зависимые файлы, вы можете выбрать их все.
- Пример URL-адреса — выберите из списка WSDL-файлов общедоступных веб-сервисов. Они удобны для тестирования функций прокси-сервера SOAP/API в Edge.
Имя прокси Это имя для создаваемого вами прокси-сервера.
Базовый путь прокси Фрагмент URI, который появляется после адреса http(s)://[host] вашего API-прокси. Edge использует базовый путь URI для сопоставления и маршрутизации входящих запросов к соответствующему API-прокси.
Примечание : Базовый путь API-прокси по умолчанию использует значение, указанное в поле
Name, преобразованное в нижний регистр.После базового пути следуют любые дополнительные URL-адреса ресурсов. Вот полная структура URL-адресов, которую клиенты будут использовать для вызова вашего API-прокси:
https://[host]/ base_path / conditional_flow_pathПримечание : Базовый путь должен быть уникальным; нельзя развернуть два API-прокси с одинаковым базовым путем. Если вы отредактируете развернутый API-прокси и установите базовый путь на то же значение, что и базовый путь другого API-прокси, Edge автоматически удалит этот API-прокси при сохранении. Прежде чем вы сможете повторно развернуть API-прокси, необходимо изменить базовый путь так, чтобы он был уникальным.
Используйте подстановочные знаки в базовых путях.
Используйте один или несколько символов подстановки
/*/в базовых путях API-прокси, чтобы обеспечить совместимость ваших API-прокси с будущими версиями. Например, базовый путь/team/*/membersпозволяет клиентам вызыватьhttps://[host]/team/ blue /membersиhttps://[host]/team/ green /membersбез необходимости создания новых API-прокси для поддержки новых команд. Обратите внимание, что/**/не поддерживается.Описание Краткое описание прокси-сервера. - Нажмите «Далее» .
- На странице WSDL выберите тип API-прокси REST to SOAP to REST .
В таблице перечислены операции, которые Edge «обнаружил» в файле WSDL. Вы можете выбрать и настроить, какие операции вы хотите включить в свой API-прокси. Таблица показана на следующем рисунке.

- В столбце «Тип порта» выберите набор операций, которые вы хотите использовать. В WSDL элементы типа порта определяют операции, которые можно вызывать в веб-сервисе.
- При желании можно изменить HTTP-метод, связанный с операцией.
Примечание: Edge выбирает наиболее вероятный метод HTTP для каждой операции. Обычно предпочтительнее использовать GET-запросы, поскольку GET-запросы могут быть кэшированы. - При желании можно изменить путь к REST API для операции. Этот путь будет использоваться в качестве имени ресурса в URL-адресе прокси-сервера API.
- Пройдите все шаги мастера, чтобы добавить средства безопасности, выбрать виртуальные хосты и среду развертывания.
- На странице «Сборка» нажмите «Сборка и развертывание» . Edge сгенерирует и развернет новый API-прокси на основе WSDL.
- Перейдите на страницу сводки нового API-прокси. Обратите внимание, что набор ресурсов был создан на основе операций, обнаруженных в файле WSDL.
На странице «Обзор» прокси-сервера в списке « Ресурсы» представлено подробное описание нового API, его операций и параметров. Это представление можно рассматривать как справочную документацию по API. Edge автоматически генерирует это представление модели API. Просто разверните ресурс, чтобы увидеть его описание и информацию о пути.
О последнем прокси-сервере
Когда Edge генерирует API-прокси на основе WSDL, результирующий прокси фактически представляет собой сложный поток, включающий политики для преобразования данных, извлечения и установки переменных, обработки сообщений и многого другого. После генерации прокси на основе WSDL, просмотрите результирующий поток в представлении «Разработка» пользовательского интерфейса управления API. Там вы сможете увидеть, какие именно политики были добавлены.
Например, на стороне запроса используется политика AssignMessage для установки целевого URL-адреса. На стороне ответа выполняются политики для преобразования ответа из XML в JSON, извлечения части тела SOAP-ответа в переменную и установки сообщения ответа. Эти политики (и другие) добавляются автоматически при создании прокси-сервера.
Спецификация OpenAPI : Чтобы просмотреть автоматически сгенерированную спецификацию OpenAPI для этого прокси, перейдите по адресу http(s)://[proxy_domain]/[proxy_base_path]/openapi.json . Однако преобразование не всегда точное, поскольку не все правила XML-схемы могут быть представлены в спецификации OpenAPI.
Создание сквозного прокси-сервера для SOAP-сервиса.
В этом разделе объясняется, как создать сквозной прокси-сервер с помощью опции «Сквозной прокси-сервер» в диалоговом окне «Создать новый прокси-сервер».
Обзор
Опция «Транзитный прокси» позволяет создать прокси, который передает SOAP-сообщение в запросе к бэкэнд-сервису «без изменений», что значительно упрощает создание прокси для веб-сервиса на основе SOAP. В фоновом режиме Edge автоматически обрабатывает все преобразования и другие действия в потоке данных. Например, если запрос имеет формат JSON, Edge выполняет шаги по его преобразованию в допустимое XML-сообщение SOAP с правильными пространствами имен перед отправкой его в сервис методом POST. Аналогично, когда сервис возвращает ответ SOAP в формате XML, Edge преобразует его обратно в JSON перед отправкой клиенту. Кроме того, Edge настраивает целевую конечную точку бэкэнда, которая может различаться для каждой операции SOAP.
Для этого типа прокси-сервера Edge размещает WSDL и создает в нем поток, позволяющий получить к нему доступ. Адрес этого размещенного на Edge WSDL, http(s)://[proxy_domain]/[proxy_base_path]?wsdl , становится новым URL-адресом конечной точки службы для клиентов, вызывающих SOAP-сервис через прокси-сервер.
Основные шаги
Край
Чтобы создать сквозной прокси-сервер для SOAP-сервиса с помощью пользовательского интерфейса Edge:
- Войдите на сайт apigee.com/edge .
- В левой панели навигации выберите «Разработка» > «API-прокси» .
- Нажмите +Прокси .
- Нажмите на SOAP-сервис .
- На странице сведений о прокси-сервере укажите данные WSDL.
Поле Описание WSDL Выберите источник WSDL.
- Исходный веб-адрес (URL) - Введите или вставьте URL-адрес WSDL-файла.
- С моего компьютера — загрузите WSDL-файл из локальной директории. Вы можете загрузить несколько файлов, если есть зависимости.
Имя Название API-прокси.
Базовый путь Фрагмент URI после адреса http(s)://[host] вашего API-прокси. Edge использует базовый путь URI для сопоставления и маршрутизации входящих запросов к соответствующему API-прокси.
Примечание : Рекомендации Apigee по версионированию API см. в электронной книге « Версионирование в проектировании веб-API: недостающее звено» .
После базового пути следуют любые дополнительные URL-адреса ресурсов. Вот полная структура URL-адресов, которую клиенты будут использовать для вызова вашего API-прокси:
https://[host]/ base_path /conditional_flow_pathПримечание : Базовый путь должен быть уникальным. Если вы позже отредактируете этот прокси и установите его базовый путь таким же, как у другого API-прокси, этот API-прокси будет автоматически удален при сохранении. Необходимо отредактировать базовый путь, прежде чем вы сможете повторно развернуть его.
Использование подстановочного знака в базовых путях
В базовых путях API-прокси можно использовать один или несколько символов подстановки
/*/для обеспечения совместимости с будущими версиями прокси. Например, базовый путь/team/*/membersпозволяет клиентам обращаться кhttps://[host]/team/ blue /membersиhttps://[host]/team/ green /membersбез необходимости создания новых API-прокси для поддержки новых команд. Обратите внимание, что использование /**/ не поддерживается.Примечание : Базовый путь API-прокси по умолчанию определяется значением, указанным в поле «Имя», и преобразуется в нижний регистр, если вы явно не отредактируете содержимое поля «Базовый путь».
Описание (Необязательно) Описание API. - Нажмите «Далее» .
- На странице «Общие политики» мастера настройте следующие параметры:
- Требования к авторизации в системе безопасности. См. раздел «Добавление средств безопасности» .
- Поддержка совместного использования ресурсов между источниками (CORS). См. раздел «Добавление поддержки CORS» .
- Квоты для защиты вашего бэкэнд-сервиса от высокой нагрузки. См. раздел «Квоты» . (Недоступно, если выбрана сквозная авторизация.)
- Обеспечение соблюдения лимитов монетизации для организаций, использующих монетизацию. См. раздел «Обеспечение соблюдения лимитов монетизации для API-прокси» .
- На странице WSDL выберите тип API-прокси Pass-Through SOAP .

- Выберите тип порта из раскрывающегося списка, чтобы указать, какой набор операций вы хотите использовать. В WSDL элементы типа порта определяют операции, которые можно вызывать в веб-сервисе.
- Нажмите «Далее» .
- На странице «Виртуальные хосты» мастера выберите виртуальные хосты, к которым будет привязываться API-прокси после развертывания. Дополнительную информацию см. в разделе «О виртуальных хостах» .
- Выберите среду(ы) развертывания и нажмите «Создать и развернуть».
Ваш новый API-прокси создан и развернут в выбранной среде. - Нажмите «Редактировать прокси» , чтобы отобразить страницу с подробной информацией о прокси-сервере API.
Классический Edge (частное облако)
Чтобы создать сквозной прокси-сервер для SOAP-сервиса с помощью классического пользовательского интерфейса Edge:
- Войдите в систему по
http:// ms-ip :9000, где ms-ip — это IP-адрес или DNS-имя узла сервера управления. - В верхней панели навигации выберите API > API-прокси .
- Нажмите + API-прокси .
- В мастере создания прокси-сервера выберите службу SOAP.
- Нажмите «Далее» .
- На странице «Подробности» выберите следующие параметры. После выбора файла WSDL необходимо нажать кнопку «Проверить» .
В этой области сделайте это WSDL Выберите источник WSDL.
- URL — Введите URL-адрес WSDL-файла, который вы хотите использовать.
- Файл — выберите файл WSDL в вашей файловой системе. В случаях, когда имеются дополнительные зависимые файлы, вы можете выбрать их все.
- Пример URL-адреса — выберите из списка WSDL-файлов общедоступных веб-сервисов. Они удобны для тестирования функций прокси-сервера SOAP/API в Edge.
Имя прокси Это имя для создаваемого вами прокси-сервера.
Базовый путь прокси Базовый путь прокси — это фрагмент URI, который однозначно идентифицирует API, предоставляемый этим прокси-сервером. API-сервисы используют URI базового пути для сопоставления и маршрутизации входящих запросов к соответствующему прокси-серверу API. (Базовый путь добавляется к домену API, который автоматически генерируется на основе названия вашей организации и среды , в которой развернут прокси-сервер API.) Рекомендуется включать номер версии в имя проекта, например, /v1/delayedstockquote. Это определит, как ваш API будет вызываться приложениями-потребителями.Примечание : По умолчанию поле «Базовый путь к прокси-серверу» использует значение, указанное в поле «Имя прокси-сервера», преобразованное в нижний регистр, если вы явно не отредактируете содержимое поля «Базовый путь к прокси-серверу».
Описание Краткое описание прокси-сервера. - Нажмите «Далее» .
- На странице WSDL выберите тип API-прокси Pass-Through SOAP .
Примечание: Приведена таблица, в которой перечислены все операции WSDL и соответствующая им полезная нагрузка SOAP. Это полезная нагрузка, которая "передается" в бэкэнд-сервис SOAP.
- В столбце «Тип порта» выберите набор операций, которые вы хотите использовать. В WSDL элементы типа порта определяют операции, которые можно вызывать в веб-сервисе.
- Пройдите все шаги мастера, чтобы добавить средства безопасности, выбрать виртуальные хосты и среду развертывания.
- На странице «Сборка» нажмите «Сборка и развертывание» . Edge сгенерирует и развернет новый API-прокси на основе WSDL.
О последнем прокси-сервере
Когда Edge генерирует сквозной прокси-сервер, результирующий прокси фактически представляет собой сложный поток, включающий политики для преобразования данных, извлечения и установки переменных, обработки сообщений и многого другого. После генерации сквозного прокси-сервера просмотрите результирующий поток в представлении «Разработка» пользовательского интерфейса управления API. Там вы сможете увидеть, какие именно политики были добавлены.
Например, на следующем рисунке показана часть процесса предварительной обработки целевой конечной точки сквозного прокси-сервера. На стороне запроса используется политика AssignMessage для установки целевого URL-адреса. На стороне ответа выполняются политики для преобразования ответа из XML в JSON, извлечения части тела SOAP-ответа в переменную и установки сообщения ответа. Эти политики (и другие) добавляются автоматически при создании прокси-сервера.

WSDL, сгенерированный для этого типа прокси: Чтобы просмотреть WSDL, сгенерированный для этого типа прокси, перейдите по адресу http(s)://[proxy_domain]/[proxy_base_path] ?wsdl .
Разработка прокси-серверов SOAP-to-REST повышенной сложности
В предыдущих разделах рассматривалось создание прокси-сервера API для преобразования SOAP в REST с помощью мастера создания прокси-серверов API в Edge. Однако, если вам нужен более точный контроль над преобразованием SOAP в REST, вы можете обойти автоматизацию, предоставляемую мастером, и создать прокси-сервер, вручную добавив и настроив политики для получения желаемого поведения. Для получения дополнительной информации см. Руководство: Ручное создание прокси-сервера API для преобразования SOAP в REST в Apigee Edge .