Vous consultez la documentation Apigee Edge.
Accédez à la documentation Apigee X.
Si vous êtes actuellement client Apigee Edge, vous pouvez choisir de migrer votre installation vers Apigee X pour profiter de nouvelles fonctionnalités ou d'une disponibilité régionale différente.
Cette page décrit les antipatrons de votre configuration que vous devrez résoudre avant de migrer vers Apigee X, ainsi que d'autres changements de comportement dont vous devez être conscient avant la migration.
La liste plus large des anti-modèles Apigee Edge décrit les pratiques d'utilisation à éviter dans tous les cas. Cette page décrit les pratiques d'utilisation spécifiques déconseillées qui bloqueront une migration. Résolvez-les maintenant pour éviter les problèmes lors de la migration vers Apigee X.
Applications sans produits d'API | ||||||||||||||||||||||||
| Résumé | Des modifications côté client sont-elles nécessaires ? | Solution | ||||||||||||||||||||||
|
Certaines applications ne comportent pas de produits d'API. Différence entre Apigee Edge et Apigee X :
|
Non. |
Résolution : applications sans produits d'APIAssociez chaque identifiant d'application à au moins un produit d'API. Pour savoir comment procéder, consultez Enregistrer des applications et gérer les clés API. Le moyen le plus simple consiste à attribuer à chaque application l'accès à tous les produits d'API. Cela équivaudra à ce qui est possible dans Apigee Edge. Le défi sera de déterminer la liste minimale de produits d'API auxquels chaque identifiant d'application doit avoir accès si vous souhaitez adopter une approche de "moindre privilège". Vous pouvez analyser cela avec les rapports Apigee Edge Analytics, en fonction de l'ID client. |
||||||||||||||||||||||
Cache sans délai d'expiration | ||||||||||||||||||||||||
| Résumé | Des modifications côté client sont-elles nécessaires ? | Solution | ||||||||||||||||||||||
|
Les caches n'ont pas de délai d'expiration. Différence entre Apigee Edge et Apigee X :
|
Non |
Résolution : Cache sans délai d'expirationDéfinissez un délai d'expiration pour tous les caches. |
||||||||||||||||||||||
Expressions de filtre JSONPath sur des chemins non définis | ||||||||||||||||||||||||
| Résumé | Des modifications côté client sont-elles nécessaires ? | Solution | ||||||||||||||||||||||
|
Pour les chemins non définitifs, l'interrogation du résultat d'une expression de filtre ne fait pas partie de la spécification JSONPath. Consultez https://goessner.net/articles/JsonPath/. Différence entre Apigee Edge et Apigee X : Lorsque vous parcourez cette structure d'exemple, {
"books": [
{
"name": "A",
},
{
"name": "B",
}
]
}Avec l'expression
Avec l'expression
|
Oui |
Résolution : expressions de filtre JSONPath sur les chemins non définisRecherchez et remplacez les requêtes concernées. |
||||||||||||||||||||||
Expressions JSONPath pour les index qui ne sont pas présents | ||||||||||||||||||||||||
| Résumé | Des modifications côté client sont-elles nécessaires ? | Solution | ||||||||||||||||||||||
|
Les expressions JSONPath avec un index absent ont des comportements différents dans Apigee X et Apigee Edge. Apigee X renvoie une erreur Différence entre Apigee Edge et Apigee X : Lorsque vous parcourez cette structure d'exemple, {
"books": [
{
"name": "A",
},
{
"name": "B",
}
]
}Avec l'expression
|
Oui |
Résolution : expressions JSONPath pour les index qui ne sont pas présentsRecherchez et remplacez les requêtes concernées. |
||||||||||||||||||||||
Expressions JSONPath avec un index de tableau ne renvoyant pas d'objet tableau | ||||||||||||||||||||||||
| Résumé | Des modifications côté client sont-elles nécessaires ? | Solution | ||||||||||||||||||||||
|
Les expressions JSONPath avec un index ou des tranches de tableau renvoient un objet de tableau dans Apigee X. Différence entre Apigee Edge et Apigee X : Lorsque vous parcourez cette structure d'exemple, {
"books": [
{
"name": "A",
},
{
"name": "B",
}
]
}Avec l'expression
Avec l'expression
Avec l'expression
|
Oui |
Résolution : les expressions JSONPath avec un index de tableau ne renvoient pas d'objet tableauRecherchez et remplacez les expressions qui pourraient renvoyer des résultats différents après la mise à niveau. |
||||||||||||||||||||||
Restrictions concernant le nom du keystore |
||||||||||||||||||||||||
| Résumé | Des modifications côté client sont-elles nécessaires ? | Solution | ||||||||||||||||||||||
|
Les noms de keystore Apigee X ne peuvent contenir que des lettres, des chiffres et des traits d'union. Les noms de keystore Edge n'imposent pas ces restrictions. |
Non |
Résolution : restrictions concernant le nom du keystoreVérifiez les noms des keystores et modifiez-les si nécessaire pour supprimer les caractères non acceptés. |
||||||||||||||||||||||
Plusieurs chemins de base déployés pour un proxy d'API |
||||||||||||||||||||||||
| Résumé | Des modifications côté client sont-elles nécessaires ? | Solution | ||||||||||||||||||||||
|
Plusieurs révisions d'un proxy d'API sont déployées dans un environnement et chacune d'elles possède un chemin de base différent. Différence entre Apigee Edge et Apigee X :
|
Non |
Résolution : plusieurs chemins de base déployés pour un proxy d'APIMettez à jour tous les bundles afin qu'une seule révision d'un bundle soit déployée dans un environnement, quel que soit le chemin de base. |
||||||||||||||||||||||
Messages HTTP non conformes |
||||||||||||||||||||||||
| Résumé | Des modifications côté client sont-elles nécessaires ? | Solution | ||||||||||||||||||||||
|
Les clients ou le proxy d'API envoient des messages (requêtes ou réponses) qui ne respectent pas la norme HTTP. Par exemple, les noms d'en-tête non valides, les doublons dans certains en-têtes restreints, etc. Vous ne pouvez pas migrer vers Apigee X si l'exécution de votre API présente une ou plusieurs des erreurs suivantes :
|
Oui, c'est possible. |
Résolution : messages HTTP non conformesVous devez corriger toutes les erreurs dans les protocoles HTTP avant de migrer vers Apigee X. Si une erreur provient d'une application cliente, vous devez demander au développeur de l'application cliente de corriger le problème. |
||||||||||||||||||||||
La durée d'expiration du jeton OAuth 2.0 n'est pas valide |
||||||||||||||||||||||||
| Résumé | Des modifications côté client sont-elles nécessaires ? | Solution | ||||||||||||||||||||||
|
Les limites d'expiration des jetons OAuth 2.0 sont en dehors de la plage prescrite. Différence entre Apigee Edge et Apigee X :
|
Non |
Résolution : délai d'expiration du jeton OAuth 2.0 non valide
Utilisez la règle OAuthV2 et spécifiez le délai d'expiration dans |
||||||||||||||||||||||
Limites de produits dépassées |
||||||||||||||||||||||||
| Résumé | Des modifications côté client sont-elles nécessaires ? | Solution | ||||||||||||||||||||||
|
La configuration d'Apigee Edge n'est pas conforme aux limites de produit définies. Certaines limites de produit documentées, mais non appliquées sur Apigee Edge, le sont sur Apigee X. |
Non |
Résolution : Limites de produits dépasséesCorrigez toute utilisation qui dépasse les limites du produit avant de migrer vers Apigee X. |
||||||||||||||||||||||
Règles ServiceCallout avec des spécificateurs de connexion cible pour le point de terminaison et le chemin d'accès |
||||||||||||||||||||||||
| Résumé | Des modifications côté client sont-elles nécessaires ? | Solution | ||||||||||||||||||||||
|
Dans la règle ServiceCallout, l'élément
La documentation Apigee Edge mentionne cette exigence, mais ne l'applique pas. Apigee X arrête le traitement s'il rencontre un |
Non |
Résolution : règles ServiceCallout avec des spécificateurs de connexion cible pour le point de terminaison et le chemin d'accès
Vérifiez les configurations des règles ServiceCallout et éliminez toutes les configurations |
||||||||||||||||||||||
Restrictions concernant le nom du serveur cible |
||||||||||||||||||||||||
| Résumé | Des modifications côté client sont-elles nécessaires ? | Solution | ||||||||||||||||||||||
|
Les noms de serveurs cibles Apigee X ne peuvent contenir que des lettres, des chiffres, des traits d'union et des points. Les noms de serveurs cibles Edge n'imposent pas ces restrictions. |
Non |
Résolution : restrictions concernant le nom du serveur cibleVérifiez les noms des serveurs cibles et modifiez-les pour supprimer les caractères non acceptés si nécessaire. |
||||||||||||||||||||||
Certificat d'essai dans un hôte virtuel |
||||||||||||||||||||||||
| Résumé | Des modifications côté client sont-elles nécessaires ? | Solution | ||||||||||||||||||||||
|
Un ou plusieurs hôtes virtuels utilisent le certificat "essai sans frais" fourni par Apigee. Cela permet à l'hôte virtuel de répondre aux requêtes sur des domaines tels que Différence entre Apigee Edge et Apigee X :
|
Oui |
Résolution : Certificat d'essai dans un hôte virtuelVous devez configurer votre propre domaine et provisionner les certificats de manière appropriée.
Toute application cliente qui dépend de l'ancien nom de domaine du formulaire |
||||||||||||||||||||||
DNS non résolu |
||||||||||||||||||||||||
| Résumé | Des modifications côté client sont-elles nécessaires ? | Solution | ||||||||||||||||||||||
|
Le ou les points de terminaison cibles ont des noms de domaine non résolus. Différence entre Apigee Edge et Apigee X :
|
Non |
Résolution : DNS non résoluMettez à jour le point de terminaison cible avec un nom de domaine valide. |
||||||||||||||||||||||