Вы просматриваете документацию Apigee Edge .
Перейти к документации Apigee X. info
Как текущий клиент Apigee Edge, вы можете решить перенести свою установку на Apigee X , чтобы воспользоваться новыми возможностями или другой региональной доступностью.
На этой странице описываются антипаттерны в вашей конфигурации, которые необходимо устранить перед миграцией на Apigee X, а также другие изменения в поведении, о которых следует знать перед миграцией.
Более широкий список антипаттернов Apigee Edge описывает практики использования, которых следует избегать в любом случае. На этой странице описаны конкретные нерекомендуемые практики использования, которые могут помешать миграции. Устраните их сейчас, чтобы предотвратить проблемы при миграции на Apigee X.
Приложения без API-продуктов | ||||||||||||||||||||||||
| Краткое содержание | Требуются ли изменения на стороне клиента? | Разрешение | ||||||||||||||||||||||
Имеются приложения без API-продукта(ов). Разница между Apigee Edge и Apigee X:
| Нет. | Решение: Приложения без API-продуктовСвяжите учётные данные каждого приложения как минимум с одним продуктом API. Подробнее о том, как это сделать, см. в разделе Регистрация приложений и управление ключами API . Самый простой способ — назначить каждому приложению доступ ко всем API-продуктам. Это будет эквивалентно возможностям Apigee Edge. Сложность заключается в том, что если вы хотите использовать подход с минимальными привилегиями, вам потребуется определить минимальный список API-продуктов, к которым каждое приложение должно иметь доступ. Вы можете проанализировать это с помощью отчётов Apigee Edge Analytics на основе идентификатора клиента. | ||||||||||||||||||||||
Кэш без срока действия | ||||||||||||||||||||||||
| Краткое содержание | Требуются ли изменения на стороне клиента? | Разрешение | ||||||||||||||||||||||
Кэш(и) не имеют срока годности. Разница между Apigee Edge и Apigee X:
| Нет | Решение: Кэш без срока действияУстановите срок действия всех кэшей. | ||||||||||||||||||||||
Выражения фильтра JSONPath для неопределенных путей | ||||||||||||||||||||||||
| Краткое содержание | Требуются ли изменения на стороне клиента? | Разрешение | ||||||||||||||||||||||
Для неопределённых путей запрос результата выражений фильтра не входит в спецификацию JSONPath. См. https://goessner.net/articles/JsonPath/ . Разница между Apigee Edge и Apigee X: При навигации по этому примеру структуры, {
"books": [
{
"name": "A",
},
{
"name": "B",
}
]
} С выражением
С выражением
| Да | Решение: выражения фильтра JSONPath для неопределенных путейНайдите и замените затронутые запросы. | ||||||||||||||||||||||
Выражения JSONPath для отсутствующих индексов | ||||||||||||||||||||||||
| Краткое содержание | Требуются ли изменения на стороне клиента? | Разрешение | ||||||||||||||||||||||
Выражения JSONPath с отсутствующим индексом ведут себя по-разному в Apigee X и Apigee Edge. Apigee X возвращает ошибку Разница между Apigee Edge и Apigee X: При навигации по этому примеру структуры, {
"books": [
{
"name": "A",
},
{
"name": "B",
}
]
} С выражением
| Да | Решение: выражения JSONPath для отсутствующих индексовНайдите и замените затронутые запросы. | ||||||||||||||||||||||
Выражения JSONPath с индексом массива не возвращают объект массива | ||||||||||||||||||||||||
| Краткое содержание | Требуются ли изменения на стороне клиента? | Разрешение | ||||||||||||||||||||||
Выражения JSONPath с индексом массива или срезами возвращают объект массива в Apigee X. Разница между Apigee Edge и Apigee X: При навигации по этому примеру структуры, {
"books": [
{
"name": "A",
},
{
"name": "B",
}
]
} С выражением
С выражением
С выражением
| Да | Решение: выражения JSONPath с индексом массива не возвращают объект массиваНайдите и замените выражения, которые могут вернуть другие результаты после обновления. | ||||||||||||||||||||||
Ограничения на имя хранилища ключей | ||||||||||||||||||||||||
| Краткое содержание | Требуются ли изменения на стороне клиента? | Разрешение | ||||||||||||||||||||||
Имена хранилищ ключей Apigee X могут содержать только буквы, цифры и дефисы. Имена хранилищ ключей Edge не накладывают этих ограничений. | Нет | Решение: Ограничения на имя хранилища ключейПроверьте имена хранилищ ключей и при необходимости обновите их, удалив неподдерживаемые символы. | ||||||||||||||||||||||
Несколько базовых путей, развернутых для прокси-API | ||||||||||||||||||||||||
| Краткое содержание | Требуются ли изменения на стороне клиента? | Разрешение | ||||||||||||||||||||||
В среде развернуто несколько версий прокси-сервера API, и каждая версия имеет свой базовый путь. Разница между Apigee Edge и Apigee X:
| Нет | Решение: Для API-прокси развернуто несколько базовых путей.Обновите все пакеты так, чтобы в среде была развернута только одна версия пакета, независимо от базового пути. | ||||||||||||||||||||||
Несоответствующие HTTP-сообщения | ||||||||||||||||||||||||
| Краткое содержание | Требуются ли изменения на стороне клиента? | Разрешение | ||||||||||||||||||||||
Клиенты или API-прокси отправляют сообщения (запросы или ответы), не соответствующие стандарту HTTP. Например, неверные имена заголовков, дублирование некоторых запрещённых заголовков и т. д. Вы не сможете перейти на Apigee X, если при выполнении вашего API возникает одна или несколько из следующих ошибок:
| Да, возможно. | Решение: Несоответствующие HTTP-сообщенияПеред миграцией на Apigee X необходимо исправить все ошибки в протоколах HTTP. Если ошибка возникла в клиентском приложении, необходимо обратиться к разработчику клиентского приложения с просьбой исправить проблему. | ||||||||||||||||||||||
Неверное время истечения срока действия токена OAuth 2.0 | ||||||||||||||||||||||||
| Краткое содержание | Требуются ли изменения на стороне клиента? | Разрешение | ||||||||||||||||||||||
Срок действия токена OAuth 2.0 выходит за пределы установленного диапазона. Разница между Apigee Edge и Apigee X:
| Нет | Решение: Неверный срок действия токена OAuth 2.0 Используйте политику OAuthV2 и укажите время истечения срока действия в | ||||||||||||||||||||||
Превышены лимиты продукта | ||||||||||||||||||||||||
| Краткое содержание | Требуются ли изменения на стороне клиента? | Разрешение | ||||||||||||||||||||||
Конфигурация Apigee Edge не соответствует установленным ограничениям продукта . Некоторые ограничения продукта, задокументированные, но не применяемые в Apigee Edge, применяются в Apigee X. | Нет | Решение: превышены лимиты продуктаПеред переходом на Apigee X исправьте любое использование, превышающее ограничения продукта. | ||||||||||||||||||||||
Политики ServiceCallout с спецификаторами соединения как конечной точки, так и целевого пути | ||||||||||||||||||||||||
| Краткое содержание | Требуются ли изменения на стороне клиента? | Разрешение | ||||||||||||||||||||||
В политике ServiceCallout элемент Apigee Edge документирует это требование, но не обеспечивает его соблюдение. Apigee X прекращает обработку, если обнаруживает | Нет | Решение: политики ServiceCallout с указателями как конечной точки, так и целевого пути соединения Проверьте конфигурации политики ServiceCallout и устраните все конфигурации | ||||||||||||||||||||||
Ограничения имени целевого сервера | ||||||||||||||||||||||||
| Краткое содержание | Требуются ли изменения на стороне клиента? | Разрешение | ||||||||||||||||||||||
Имена целевых серверов Apigee X могут содержать только буквы, цифры, дефисы и точки. Имена целевых серверов Edge не накладывают этих ограничений. | Нет | Решение: Ограничения на имя целевого сервераПроверьте имена целевых серверов и при необходимости обновите их, удалив неподдерживаемые символы. | ||||||||||||||||||||||
Пробный сертификат на виртуальном хосте | ||||||||||||||||||||||||
| Краткое содержание | Требуются ли изменения на стороне клиента? | Разрешение | ||||||||||||||||||||||
Один или несколько виртуальных хостов используют бесплатный пробный сертификат Apigee. Это позволяет виртуальному хосту отвечать на запросы в доменах типа Разница между Apigee Edge и Apigee X:
| Да | Решение: Пробный сертификат на виртуальном хостеВам необходимо настроить собственный домен и соответствующим образом предоставить сертификаты. Любое клиентское приложение, зависящее от устаревшего доменного имени формы | ||||||||||||||||||||||
Неразрешенный DNS | ||||||||||||||||||||||||
| Краткое содержание | Требуются ли изменения на стороне клиента? | Разрешение | ||||||||||||||||||||||
Целевые конечные точки имеют неразрешенные доменные имена. Разница между Apigee Edge и Apigee X:
| Нет | Разрешение: Неразрешенный DNSОбновите целевую конечную точку, указав допустимое доменное имя. | ||||||||||||||||||||||