Você está vendo a documentação do Apigee Edge.
Acesse a
documentação da Apigee X. informações
Como cliente atual da Apigee Edge, pode-se optar por migrar sua instalação para a Apigee X e aproveitar os novos recursos ou a disponibilidade regional diferente.
Nesta página, descrevemos os antipadrões na configuração que você precisará resolver antes de migrar para a Apigee X, bem como outras alterações de comportamento que você precisa conhecer antes da migração.
A lista mais ampla de antipadrões do Apigee Edge descreve as práticas de uso que precisam ser evitadas de qualquer forma. Nesta página, descrevemos as práticas de uso não recomendadas que bloqueiam uma migração. Resolva esses problemas agora para evitar problemas ao migrar para a Apigee X.
Apps sem produtos de API | ||||||||||||||
Resumo | Requer mudanças do lado do cliente? | Resolução | ||||||||||||
Há apps sem produtos de API. Diferença entre o Apigee Edge e a Apigee X:
|
Não. |
Resolução: apps sem produtos de APIAssocie cada credencial do app a pelo menos um produto de API. Para mais informações sobre como fazer isso, consulte Registrar apps e gerenciar chaves de API. Um caminho fácil é atribuir acesso a cada aplicativo a todos os produtos de API. Isso equivale ao que é possível fazer no Apigee Edge. Se você quiser adotar uma abordagem de "privilégio mínimo", será necessário determinar a lista mínima de produtos da API a que cada credencial de app precisa ter acesso. É possível analisar isso com os relatórios do Apigee Edge Analytics, com base no ID do cliente. |
||||||||||||
Cache sem prazo de validade | ||||||||||||||
Resumo | Requer mudanças do lado do cliente? | Resolução | ||||||||||||
Os caches não têm prazo de validade. Diferença entre o Apigee Edge e a Apigee X:
|
Não |
Resolução: cache sem tempo de expiraçãoDefine um tempo de expiração para todos os caches. |
||||||||||||
Expressões de filtro JSONPath em caminhos não definidos | ||||||||||||||
Resumo | Requer mudanças do lado do cliente? | Resolução | ||||||||||||
Para caminhos não definitivos, consultar o resultado de expressões de filtro não faz parte da especificação JSONPath. Consulte https://goessner.net/articles/JsonPath/ (link em inglês). Diferença entre o Apigee Edge e a Apigee X: Ao navegar nessa estrutura de exemplo, { "books": [ { "name": "A", }, { "name": "B", } ] } Com a expressão
Com a expressão
|
Sim |
Resolução: expressões de filtro JSONPath em caminhos não definidosEncontre e substitua as consultas afetadas. |
||||||||||||
Expressões JSONPath para índices que não estão presentes | ||||||||||||||
Resumo | Requer mudanças do lado do cliente? | Resolução | ||||||||||||
As expressões JSONPath com um índice ausente têm comportamentos diferentes na Apigee X
em comparação com o Apigee Edge. A Apigee X retorna um erro Diferença entre o Apigee Edge e a Apigee X: Ao navegar nessa estrutura de exemplo, { "books": [ { "name": "A", }, { "name": "B", } ] } Com a expressão
|
Sim |
Resolução: expressões JSONPath para índices que não estão presentesEncontre e substitua as consultas afetadas. |
||||||||||||
Expressões JSONPath com um índice de matriz que não retornam um objeto de matriz | ||||||||||||||
Resumo | Requer mudanças do lado do cliente? | Resolução | ||||||||||||
As expressões JSONPath com um índice de matriz ou frações retornam um objeto de matriz na Apigee X. Diferença entre o Apigee Edge e a Apigee X: Ao navegar nessa estrutura de exemplo, { "books": [ { "name": "A", }, { "name": "B", } ] } Com a expressão
Com a expressão
Com a expressão
|
Sim |
Resolução: expressões JSONPath com um índice de matriz não retornando um objeto de matrizEncontrar e substituir expressões que podem retornar resultados diferentes após o upgrade. |
||||||||||||
Restrições de nome do keystore |
||||||||||||||
Resumo | Requer mudanças do lado do cliente? | Resolução | ||||||||||||
Os nomes de keystore do Apigee X só podem conter letras, números e hifens. Os nomes de keystore de borda não impõem essas restrições. |
Não |
Resolução: restrições de nome do keystoreVerifique e atualize os nomes dos keystores para remover caracteres incompatíveis, se necessário. |
||||||||||||
Vários caminhos base implantados para um proxy de API |
||||||||||||||
Resumo | Requer mudanças do lado do cliente? | Resolução | ||||||||||||
Várias revisões de um proxy de API são implantadas em um ambiente, e cada revisão tem um caminho base diferente. Diferença entre o Apigee Edge e a Apigee X:
|
Não |
Resolução: vários caminhos base implantados para um proxy de APIAtualize todos os pacotes para que somente uma revisão seja implantada em um ambiente, independentemente do caminho de base. |
||||||||||||
Mensagens HTTP não compatíveis |
||||||||||||||
Resumo | Requer mudanças do lado do cliente? | Resolução | ||||||||||||
Os clientes ou o proxy de API enviam mensagens (solicitações ou respostas) que não estão em conformidade com o padrão HTTP. Por exemplo, nomes de cabeçalho inválidos, duplicações em alguns cabeçalhos restritos e assim por diante. Não será possível migrar para a Apigee X se a execução da API tiver um ou mais dos seguintes erros:
|
Sim, possivelmente. |
Resolução: mensagens HTTP não compatíveisCorrija todos os erros nos protocolos HTTP antes de migrar para a Apigee X. Se um erro for originado de um aplicativo cliente, você precisará pedir ao desenvolvedor do app cliente que corrija o problema. |
||||||||||||
O prazo de validade do token OAuth 2.0 é inválido |
||||||||||||||
Resumo | Requer mudanças do lado do cliente? | Resolução | ||||||||||||
Os limites de expiração do token OAuth 2.0 estão fora do intervalo prescrito. Diferença entre o Apigee Edge e a Apigee X:
|
Não |
Resolução: o tempo de expiração do token OAuth 2.0 é inválido
Use a política OAuthV2 e especifique o prazo de validade em
|
||||||||||||
Limites de produtos excedidos |
||||||||||||||
Resumo | Requer mudanças do lado do cliente? | Resolução | ||||||||||||
A configuração do Apigee Edge não está em conformidade com os limites de produtos definidos. Alguns limites de produtos que são documentados, mas não aplicados no Apigee Edge são aplicados na Apigee X. |
Não |
Resolução: limites de produtos excedidosCorrija qualquer uso que exceda os limites de produtos antes de migrar para a Apigee X. |
||||||||||||
Políticas ServiceFrases com especificadores de conexão de destino de caminho e endpoint |
||||||||||||||
Resumo | Requer mudanças do lado do cliente? | Resolução | ||||||||||||
Na política Service callout, o elemento
O Apigee Edge documenta esse requisito, mas não o aplica. A Apigee X interromperá
o processamento se encontrar um |
Não |
Resolução: políticas ServiceFrases com especificadores de conexão de destino de caminho e endpoint
Verifique as configurações da política ServiceFrase de destaque e elimine quaisquer
configurações |
||||||||||||
Restrições de nome do servidor de destino |
||||||||||||||
Resumo | Requer mudanças do lado do cliente? | Resolução | ||||||||||||
Os nomes dos servidores de destino da Apigee X só podem conter letras, números, hifens e pontos. Os nomes dos servidores de destino de borda não impõem essas restrições. |
Não |
Resolução: restrições de nome do servidor de destinoVerifique os nomes dos servidores de destino e atualize-os para remover caracteres incompatíveis, se necessário. |
||||||||||||
Certificado de teste em um host virtual |
||||||||||||||
Resumo | Requer mudanças do lado do cliente? | Resolução | ||||||||||||
Um ou mais hosts virtuais usam o certificado de "avaliação sem custo financeiro" fornecido pela Apigee. Isso faz
com que o host virtual responda a solicitações em domínios como Diferença entre o Apigee Edge e a Apigee X:
|
Sim |
Resolução: certificado de avaliação em um host virtualVocê precisa configurar seu próprio domínio e provisionar certificados adequadamente.
Qualquer aplicativo cliente que dependa do nome de domínio legado do
formulário |
||||||||||||
DNS não resolvido |
||||||||||||||
Resumo | Requer mudanças do lado do cliente? | Resolução | ||||||||||||
Os endpoints de destino têm nomes de domínio não resolvidos. Diferença entre o Apigee Edge e a Apigee X:
|
Não |
Resolução: DNS não resolvidoAtualize o endpoint de destino com um nome de domínio válido. |