Создайте простой API-прокси

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

Apigee Edge позволяет быстро предоставлять серверные службы в виде API. Вы делаете это, создавая прокси-сервер API, который обеспечивает фасад для внутренней службы, которую вы хотите предоставить. Вам нужно только предоставить сетевой адрес внутренней службы, а также некоторую информацию, которую Edge использует для создания прокси-сервера API, доступного разработчикам.

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

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

Создание прокси API с помощью пользовательского интерфейса

Самый простой способ создать прокси-сервер API — использовать мастер создания прокси-сервера.

Край

Чтобы получить доступ к мастеру создания прокси с помощью пользовательского интерфейса Edge:

  1. Войдите на сайт apigee.com/edge .
  2. Выберите «Разработка» > «Прокси API» на левой панели навигации.
  3. Нажмите +Прокси .

Мастер создания прокси отображает и проведет вас через шаги по созданию и добавлению минимальных функций в прокси API.

Первая страница мастера создания прокси-сервера, предлагающая выбрать обратный прокси-сервер, службу SOAP, «Без цели» или «Пакет прокси-сервера» для настройки работы мастера.

Классический Edge (частное облако)

Чтобы получить доступ к мастеру создания прокси с помощью классического пользовательского интерфейса Edge:

  1. Войдите в систему по http:// ms-ip :9000 , где ms-ip — это IP-адрес или DNS-имя узла сервера управления.
  2. Выберите API > Прокси API на верхней панели навигации.
  3. Нажмите + Прокси-сервер API .

Мастер создания прокси отображает и проведет вас через шаги по созданию и добавлению минимальных функций в прокси API.

Первая страница мастера создания прокси-сервера, предлагающая выбрать обратный прокси-сервер, службу SOAP, «Без цели» или «Пакет прокси-сервера» для настройки работы мастера.

Первая страница мастера позволяет создать прокси-сервер API из следующих источников:

Тип Описание
Обратный прокси (наиболее распространенный)

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

Нажмите «Использовать спецификацию OpenAPI», чтобы создать прокси-сервер на основе действующей спецификации OpenAPI. Дополнительные сведения об этой опции см. в разделе «Использование спецификаций OpenAPI для создания прокси» далее в этом разделе.

SOAP-сервис Прокси-сервер API, созданный из файла WSDL. См. раздел «Предоставление веб-службы на основе SOAP в качестве прокси-сервера API» .
Нет цели

Прокси-сервер API без серверной части API («без цели»). Аналогично созданию обратного прокси-сервера для службы HTTP, описанному ранее, за исключением того, что вы не будете указывать существующий API при определении сведений о прокси-сервере API.

Нажмите «Использовать спецификацию OpenAPI» , чтобы создать прокси-сервер на основе действительной спецификации OpenAPI. Дополнительные сведения об этой опции см. в разделе «Использование спецификаций OpenAPI для создания прокси» далее в этом разделе.

Размещенная цель

Прокси-сервер API, который направляет к приложению Node.js, развернутому в среде размещенных целевых объектов. См. обзор размещенных целевых объектов .

Загрузить пакет прокси Существующий пакет прокси API (например, один из примеров прокси API , доступных на GitHub). См. раздел Импорт прокси API из пакета прокси API .

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

Создание обратного прокси-сервера для службы HTTP

Edge генерирует обратные прокси на основе двух частей информации:

  • URL-адрес серверной службы
  • Путь URI, который однозначно идентифицирует API, который будет предоставлен прокси-сервером API потребительским приложениям.

URL-адрес внутренней службы обычно представляет собой приложение с поддержкой службы, принадлежащее вашей организации. Он также может указывать на общедоступный API. API или служба могут находиться под вашим контролем (например, внутреннее приложение HR или приложение Rails в облаке) или это может быть сторонний API или служба (например, Twitter или Instagram).

Край

  1. Откройте мастер создания прокси-сервера, как описано в разделе «Создание прокси-сервера API с помощью пользовательского интерфейса» ранее в этом разделе.
  2. В мастере создания прокси нажмите «Обратный прокси» (наиболее распространенный) . Чтобы создать прокси-сервер на основе существующей действующей спецификации OpenAPI, нажмите « Использовать спецификацию OpenAPI» . Подробную информацию об этой опции см. в разделе «Использование спецификаций OpenAPI для создания прокси» ниже.
  3. На странице мастера « Сведения » введите следующую информацию.
    Поле Описание
    Имя Имя, отображаемое для вашего 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.
    Цель (существующий API) URL-адрес внутренней службы, которую вызывает этот прокси-сервер API.
  4. На странице мастера «Общие политики» настройте следующие параметры:
  5. На странице мастера «Виртуальные хосты» выберите виртуальные хосты, к которым будет привязан прокси-сервер API при развертывании. Дополнительную информацию см. в разделе О виртуальных хостах .
  6. На странице «Сводка» при необходимости выберите среду развертывания и нажмите « Создать и развернуть» .

    Ваш новый прокси-сервер API будет создан и развернут в выбранной среде.

  7. Нажмите «Изменить прокси» , чтобы отобразить страницу сведений о прокси-сервере API.

Классический Edge (частное облако)

  1. Откройте мастер создания прокси-сервера, как описано в разделе «Создание прокси-сервера API с помощью пользовательского интерфейса» ранее в этом разделе.
  2. В мастере создания прокси выберите Обратный прокси (наиболее распространенный) . Чтобы создать прокси-сервер на основе существующей допустимой спецификации OpenAPI, нажмите «Использовать OpenAPI» . Подробную информацию об этой опции см. в разделе «Использование спецификаций OpenAPI для создания прокси» ниже.
  3. Нажмите Далее .
  4. На странице мастера « Сведения » введите следующую информацию.
    Поле Описание
    Имя прокси Имя, отображаемое для вашего 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 URL-адрес, который платформа API вызывает от имени приложений, вызывающих ваш API через URL-адрес прокси-сервера API.
    Описание Описание API.
  5. На странице «Безопасность» мастера настройте следующее:
  6. На странице мастера «Виртуальные хосты» выберите виртуальные хосты, к которым будет привязан прокси-сервер API при развертывании. Дополнительную информацию см. в разделе О виртуальных хостах .
  7. Выберите среду(ы) развертывания и нажмите « Создать и развернуть».
    Отправляется подтверждение, подтверждающее, что ваш новый прокси-сервер API был успешно создан и развернут в выбранной среде.
  8. Нажмите «Просмотреть прокси <имя прокси>» в редакторе, чтобы отобразить страницу сведений о прокси-сервере API.

Импорт прокси API из пакета прокси API

Часто вы определяете прокси API как набор файлов XML вместе с любыми другими вспомогательными файлами. Определив прокси-серверы API как набор файлов, внешних по отношению к Edge, вы можете хранить их в системе управления версиями, а затем импортировать их в Edge для тестирования и развертывания.

Посмотрите это видео, чтобы узнать, как создать и импортировать прокси-сервер API из пакета прокси-серверов API.

Край

Чтобы импортировать прокси API из пакета прокси API:

  1. Откройте мастер создания прокси-сервера, как описано в разделе «Создание прокси-сервера API с помощью пользовательского интерфейса» ранее в этом разделе.
  2. Нажмите Загрузить пакет прокси .
  3. На странице «Загрузить пакет прокси» в мастере прокси введите следующую информацию.

    Поле Описание
    ZIP-пакет ZIP-файл, содержащий конфигурацию прокси-сервера API. Перетащите или щелкните, чтобы перейти к файлу.
    Имя Имя, отображаемое для вашего API. По умолчанию используется имя ZIP-файла без расширения.
  4. Нажмите Далее .
  5. На странице «Сводка» при необходимости выберите среду(ы) развертывания и нажмите « Создать и развернуть».
    Отобразится подтверждение, подтверждающее, что ваш новый прокси-сервер API был успешно создан.
  6. Нажмите «Изменить прокси» , чтобы отобразить страницу сведений о прокси-сервере API.

Классический Edge (частное облако)

  1. Откройте мастер создания прокси-сервера, как описано в разделе «Создание прокси-сервера API с помощью пользовательского интерфейса» ранее в этом разделе.
  2. В мастере создания прокси выберите «Пакет прокси» .
  3. Нажмите Далее .
  4. На странице «Сведения» мастера прокси введите следующую информацию.

    Поле Описание
    ZIP-пакет Нажмите «Выбрать файл» и перейдите к ZIP-файлу, содержащему конфигурацию прокси-сервера API.
    Имя прокси Имя, отображаемое для вашего API.
  5. Просмотрите информацию о сборке и нажмите « Построить».
    В случае успеха отображается сообщение, и Edge автоматически развертывает импортированный прокси-сервер API в выбранной среде вашей организации. API, предоставляемый прокси-сервером API, доступен для вызова.
  6. Нажмите « Просмотреть прокси <имя прокси>» в редакторе, чтобы отобразить страницу сведений о прокси-сервере API.
  7. Чтобы развернуть прокси-сервер, щелкните раскрывающийся список «Развертывание» , выберите среду, в которой вы хотите развернуть, и ответьте на запрос.

Предоставление веб-службы на основе SOAP в качестве прокси-сервера API

В мастере создания прокси щелкните Служба SOAP и следуйте указаниям мастера, чтобы создать сквозной прокси-сервер или прокси-сервер на основе REST для службы SOAP. Подробности см. в разделе «Предоставление службы SOAP в качестве прокси-сервера API» .

Добавление безопасности

На странице Общие политики (Edge) или Безопасность (Classic Edge) мастера создания прокси выберите тип авторизации безопасности, который вы хотите добавить. В следующей таблице приведены доступные варианты:

Авторизация безопасности Описание
API-ключ Добавляет простую проверку ключа API в определяемый вами прокси-сервер API. В ответ платформа API добавляет политику VerifyAPIKey и политику AssignMessage к вашему прокси-серверу API. Политика VerifyAPIKey проверяет ключи API, предоставленные запрашивающими приложениями. Политика AssignMessage удаляет ключ API, предоставленный при вызове API в качестве параметра запроса, из запроса, пересылаемого на внутренний сервер.
ОАутентификация 2.0 Добавляет аутентификацию на основе OAuth 2.0 к вашему прокси-серверу API. Apigee Edge автоматически добавляет две политики к вашему прокси-серверу API: одну политику для проверки токена доступа и другую политику для удаления токена доступа из сообщения перед его пересылкой в ​​вашу серверную службу. Чтобы узнать, как получить токен доступа, см. OAuth .
Пройти (без авторизации) Никакой авторизации не требуется. Запросы передаются на серверную часть без каких-либо проверок безопасности в Apigee Edge.

Добавление поддержки CORS

CORS (совместное использование ресурсов между источниками) — это стандартный механизм, который позволяет веб-браузеру отправлять прямые запросы к другому домену. Стандарт CORS определяет набор заголовков HTTP, которые веб-браузеры и серверы используют для реализации междоменной связи.

Вы можете добавить поддержку CORS в свой API, выбрав Добавить заголовки CORS на странице Общие политики (Edge) или Безопасность (Classic Edge) мастера создания прокси.

Более подробную информацию о поддержке CORS, включая добавление предварительной поддержки CORS в прокси, см. в разделе Добавление поддержки CORS в прокси API .

Использование спецификаций OpenAPI для создания прокси

В этом разделе обсуждается параметр «Использовать OpenAPI», который доступен для создания на основе спецификации OpenAPI следующих типов прокси-серверов API: обратный, Node.js или без цели.

Что такое спецификация OpenAPI?

Логотип инициативы Open API «Инициатива Open API (OAI) направлена ​​на создание, развитие и продвижение независимого от поставщика формата описания API на основе спецификации Swagger». Дополнительную информацию об инициативе Open API см. на странице https://openapis.org .

Спецификация OpenAPI использует стандартный формат для описания RESTful API. Спецификация OpenAPI, написанная в формате JSON или YAML, является машиночитаемой, но при этом ее легко читать и понимать людям. Спецификация описывает такие элементы API, как его базовый путь, пути и команды, заголовки, параметры запроса, операции, типы контента, описания ответов и многое другое. Кроме того, спецификация OpenAPI обычно используется для создания документации API.

Вот фрагмент спецификации OpenAPI, описывающий службу ложной целевой цели Apigee, http://mocktarget.apigee.net . Для получения дополнительной информации см. https://github.com/apigee/api-platform-samples/tree/master/default-proxies/helloworld/openapi .

openapi: 3.0.0
info:
  description: OpenAPI Specification for the Apigee mock target service endpoint.
  version: 1.0.0
  title: Mock Target API
paths:
  /:
    get:
      summary: View personalized greeting
      operationId: View a personalized greeting
      description: View a personalized greeting for the specified or guest user.
      parameters:
        - name: user
          in: query
          description: Your user name.
          required: false
          schema:
            type: string
      responses:
        "200":
          description: Success
  /help:
    get:
      summary: Get help
      operationId: Get help
      description: View help information about available resources in HTML format.
      responses:
        "200":
          description: Success
...

С помощью мастера создания прокси вы можете импортировать спецификацию OpenAPI и использовать ее для создания прокси-сервера API. После создания прокси-сервера вы можете использовать пользовательский интерфейс Edge для его дальнейшей разработки, добавляя политики, реализуя собственный код и т. д., как и любой прокси-сервер Edge.

Создание прокси-сервера API на основе спецификации OpenAPI

Создайте прокси-серверы API на основе спецификации OpenAPI. Всего за несколько кликов вы получите прокси-сервер API с путями, параметрами, условными потоками и целевыми конечными точками, сгенерированными автоматически. Затем вы можете добавить такие функции, как безопасность OAuth, ограничение скорости и кэширование.

В мастере создания прокси нажмите « Использовать спецификацию OpenAPI» и следуйте инструкциям мастера, чтобы создать обратный или нецелевой прокси-сервер на основе спецификации OpenAPI. Дополнительные сведения см. в разделе Создание прокси-сервера API на основе спецификации OpenAPI .

Посмотрите это видео, чтобы узнать, как создать прокси-сервер API на основе спецификации OpenAPI.

Обновление потоков в прокси-сервере API с использованием спецификации OpenAPI

После создания прокси API из спецификации OpenAPI, если вы измените спецификацию, добавив дополнительные пути к ресурсам, вы можете использовать спецификацию для добавления связанных условных потоков в прокси API.

Чтобы обновить потоки в прокси-сервере API с помощью спецификации OpenAPI:

  1. Добавьте новые пути к ресурсам в спецификацию OpenAPI. См. раздел «Редактирование существующей спецификации OpenAPI» .
  2. Откройте прокси-сервер API в пользовательском интерфейсе и перейдите на вкладку «Разработка» .
  3. В навигаторе нажмите + рядом с конечной точкой прокси-сервера, которую вы хотите обновить.
    Откроется диалоговое окно «Новый условный поток».
  4. Нажмите «Из OpenAPI» , если он еще не выбран.
    Если в спецификации OpenAPI есть ресурсы, которые не имеют соответствующего условного потока в прокси-сервере API, они перечислены в диалоговом окне, как показано на следующем рисунке. Ресурсы, которые не представлены как потоки в текущем прокси API. Этот пример включает /loveapis, /ip, /json и /xml.
  5. Выберите каждый из ресурсов, для которого вы хотите добавить условный поток.
  6. Нажмите Добавить .

Условные потоки добавляются в ваш прокси API.

Создание новой версии прокси API

Создайте новую версию прокси-сервера API, как описано ниже.

Край

Чтобы создать новую версию прокси-сервера API с помощью пользовательского интерфейса Edge:

  1. Войдите на сайт apigee.com/edge .
  2. Выберите «Разработка» > «Прокси API» на левой панели навигации.
  3. Щелкните прокси-сервер API в списке, который вы хотите скопировать.
  4. Выберите «Проект» > «Сохранить как новую редакцию» .

Классический Edge (частное облако)

Чтобы создать новую версию прокси-сервера API с помощью классического пользовательского интерфейса Edge:

  1. Войдите в систему по http:// ms-ip :9000 , где ms-ip — это IP-адрес или DNS-имя узла сервера управления.
  2. Выберите API > Прокси API на верхней панели навигации.
  3. Щелкните прокси-сервер API в списке, который вы хотите скопировать.
  4. Выберите «Проект» > «Сохранить как новую редакцию» .

Копирование прокси API

Скопируйте существующий прокси-сервер API в новый прокси-сервер API, как описано ниже.

Край

Чтобы скопировать прокси-сервер API с помощью пользовательского интерфейса Edge:

  1. Войдите на сайт apigee.com/edge .
  2. Выберите «Разработка» > «Прокси API» на левой панели навигации.
  3. Щелкните прокси-сервер API в списке, который вы хотите скопировать.
  4. Выберите «Проект» > «Сохранить как новый прокси API» .
  5. В диалоговом окне «Сохранить как новый прокси» введите имя нового прокси API.
  6. Нажмите Добавить .

Классический Edge (частное облако)

Чтобы скопировать прокси-сервер API с помощью классического пользовательского интерфейса Edge:

  1. Войдите в систему по http:// ms-ip :9000 , где ms-ip — это IP-адрес или DNS-имя узла сервера управления.
  2. Выберите API > Прокси API на верхней панели навигации.
  3. Щелкните прокси-сервер API в списке, который вы хотите скопировать.
  4. Выберите «Проект» > «Сохранить как новый прокси API» .
  5. В диалоговом окне «Сохранить как новый прокси» введите имя нового прокси API.
  6. Нажмите Добавить .

Резервное копирование прокси API

Вы можете создать резервную копию существующего прокси-сервера API в виде набора XML-файлов в пакете прокси-сервера API. После экспорта в пакет вы можете импортировать прокси-сервер API в новый прокси-сервер, как описано ранее в этом разделе в разделе «Импорт прокси-сервера API из пакета прокси-сервера API» . Дополнительную информацию см. в разделе Загрузка прокси-серверов API .

Создание прокси-сервера API с помощью API

Чтобы создать прокси-сервер API с помощью API, см. раздел API прокси-серверов API .