Você está vendo a documentação do Apigee Edge.
Acesse a
documentação da Apigee X. informações
As amostras da API Apigee Edge contêm os exemplos de proxies, políticas, códigos e ferramentas da API que ilustram os recursos dos serviços da API Apigee Edge descritos abaixo.
Para instruções sobre como usar os exemplos, consulte Como usar os proxies de API de amostra (em inglês).
Aprenda fazendo
Quer colocar a mão na massa e começar a criar uma base de conhecimento sólida sobre o Apigee Edge? Temos uma biblioteca de amostras práticas no GitHub que permitem implantar, invocar e rastrear rapidamente alguns proxies de amostra, começando pelo proxy mais simples e passando para proxies que ilustram a validação de chaves de API, cota, armazenamento em cache de respostas, tratamento de falhas e muito mais.
Depois de clonar o repositório e configurar seu ambiente (leva apenas alguns minutos), é possível testar cada amostra em menos de um minuto. Como cada amostra cria uma nova revisão do mesmo proxy, seu ambiente não fica desorganizado com muitas amostras. É possível alternar revisões, reimplantar uma revisão diferente na interface de gerenciamento e analisar o código de proxy a qualquer momento. O arquivo leia-me de cada amostra também fornece um breve resumo do que a amostra está fazendo e como está configurada.
Faça um teste! https://github.com/apigee/api-platform-samples/tree/master/learn-edge
Amostras de livros de receitas
Um conjunto de amostras é fornecido para os tópicos do livro de receitas do proxy de API.
Nome | Descrição | Tipos de política | Recursos |
---|---|---|---|
javascript-cookbook (em inglês) | Demonstra um snippet JavaScript simples que adiciona cabeçalhos HTTP a partir de variáveis, transforma um relatório meteorológico em formato XML de JSON para XML e corta o conteúdo para clientes de dispositivos móveis. | minimizar.js setHeaders.js |
|
javascript-mashup-cookbook (em inglês) | Um aplicativo JavaScript completo que chama APIs públicas, combina resultados e gera uma resposta aprimorada para o app cliente. Observação: esse proxy de API implementa a mesma funcionalidade que o mashup de políticas, demonstrando que o mesmo problema pode ser resolvido com técnicas diferentes. | JavaScript | MashItUp.js |
java-hello (em inglês) | Frase de destaque simples em Java com o Hello World. | JavaCallout | JavaHello.java |
java-cookbook | Converte o conteúdo e os cabeçalhos da resposta em letras maiúsculas. | JavaCallout |
ResponseUppercase.java |
java-properties | Demonstra como usar propriedades em uma chamada de Java. | JavaCallout | JavaProperties.java |
java-error (link em inglês) | Demonstra padrões de tratamento de erros que podem ser usados no código de chamadas em Java. | JavaCallout | JavaError.java |
manual-mashup-cookbook | Um aplicativo completo que usa a composição de políticas para chamar duas APIs públicas, combina resultados e gera uma resposta aprimorada para o app cliente. Observação: esse proxy de API implementa a mesma funcionalidade que o mashup do JavaScript, demonstrando que o mesmo problema pode ser resolvido com técnicas diferentes. | AssignMessage ServiceCallout ExtractVariables JavaScript XMLToJSON |
GenerateResponse.js |
Exemplos de proxies de API
Os proxies de API a seguir estão localizados no GitHub, onde as páginas "leia-me" fornecem descrições detalhadas dos exemplos. Se tiver interesse em saber como uma política específica funciona em um exemplo, procure na coluna "Tipos de política" abaixo da política em que você tem interesse e clique no nome da amostra na coluna "Nome". As políticas são vinculadas às respectivas páginas de referência na documentação.
Referência e ferramentas
Além dos exemplos do manual e de proxies de exemplo nas tabelas acima, os exemplos do Edge para GitHub (em inglês) também contêm estes recursos:
Nome | Descrição | Tipos de política | Recursos |
---|---|---|---|
regex-proteção | A política de proteção contra ameaças de expressões regulares protege as APIs de back-end e os microsserviços contra ataques de injeção de SQL. | N/A | |
oauth-validate-key-secret | Você está implementando o fluxo de tipo de concessão de senha OAuth. Você precisa validar a chave secreta e a chave do cliente do aplicativo no Edge antes de chamar um provedor de identidade externo para validar as credenciais do usuário. | OAuthV2, outros | N/A |
condition-pattern-matching (link em inglês) | Com esse proxy, é possível testar facilmente as instruções condicionais em um fluxo de proxy de API. | AssignMessage | N/A |
access-entity | Mostra como recuperar perfis para entidades do repositório de dados do Apigee Edge. | AssignMessage AccessEntity ExtractVariables |
nenhum |
apikey | Implementa a validação simples da chave de API | VerifyAPIKey AssignMessage Cota |
nenhum |
async-callout | Demonstra uma chamada assíncrona simples usando o httpClient do JavaScript. | JavaScript | assemble_response.js callout.js |
base64encoder | Demonstra como chamar inclusões de JavaScript usando recursos JavaScript em proxies de API. | AssignMessage JavaScript |
core-min.js enc-utf16-min.js enc-base64-min.js encodeAuthHeader.js |
política-condicional | Implementa a aplicação simples de política condicional. Quando uma solicitação contém um cabeçalho HTTP responsetime:true, uma política executa um script Python que adiciona um conjunto de métricas de desempenho à mensagem de resposta, como cabeçalhos HTTP | Script (Python) | timer.py |
dynamic-endpoint (em inglês) | Implementa o roteamento condicional simples em um cenário um pouco mais complexo, que define dois URLs e uma rota padrão. | nenhum | nenhum |
jira-release-notes (link em inglês) | Este é o proxy de API usado pela equipe de documentos da Apigee para gerar notas de versão do Jira. | JSONToXML XSL |
releasenotes_api.xsl |
kerberos-credential-authentication (link em inglês) | Esta amostra mostra como executar a mediação de credenciais do Kerberos no Apigee Edge. | JavaCallout | Arquivo Java JAR |
oauth-advanced | Um exemplo completo e funcional do fluxo de tipo de concessão do código de autorização, com o Apigee Edge como o servidor de autorização. |
GenerateAccessToken Muitos outros... |
confira o código de exemplo |
oauth-client-credentials | Demonstra um endpoint de token OAuth 2.0 totalmente funcional configurado para o tipo de concessão de credenciais do cliente. | GenerateAccessToken | nenhum |
oauth-login-app | Obsoleto. Em vez disso, recomendamos que você consulte a amostra oauth-advanced. | ||
oauth-validate-key-secret | Ilustra uma técnica para validar a chave e o secret do cliente antes de chamar um provedor de identidade para validar as credenciais do usuário no fluxo do tipo de concessão de senha. | OAuthV2 AssignMessage ExtractVariables ServiceCallout RaiseFault |
nenhum |
oauth-verify-accesstoken | Demonstra um proxy de API configurado para validar tokens de acesso do OAuth 2.0 e verificar a cota. | VerifyAccessToken Cota |
nenhum |
oauth10a-3legg | Demonstra uma configuração de três pernas do OAuth 1.0a. | GenerateAceessToken GenerateRequestToken ServiceCallout VerifyAccessToken |
nenhum |
outbound-oauth | Usa a API Tradutor do Microsoft Azure para traduzir tweets. Para isso, ele faz uma chamada de saída para conseguir um token de acesso OAuth e, em seguida, armazena o token em cache usando as políticas de armazenamento em cache dos serviços de API, reutilizando o token armazenado em cache sempre que uma chamada de saída é feita. Além disso, inclui um app de navegador de demonstração usado para invocar o proxy de API. | AssignMessage LookupCache PopulateCache JavaScript |
api-config.js api-token-get.js translate-query.js translate-results.js |
paginação | Pagina uma mensagem de resposta XML com base nos parâmetros de limite e deslocamento fornecidos pelo cliente | AssignMessage ExtractVariables ResponseCache VerifyApiKey XSL |
paginate.xslt |
response-cache (link em inglês) | Demonstra como armazenar previsões do tempo em cache no Edge por 10 minutos. | ResponseCache AssignMessage |
nenhum |
simple-python | Demonstra um cenário simples de anexação de um script Python na resposta que adiciona um valor de cabeçalho a ela. |
Script (Python) | setHeader.py |
soap | Demonstra uma transformação XSL que reescreve um arquivo WSDL em resposta a uma solicitação com o parâmetro de consulta ?wsdl. | AssignMessage ExtractVariables Script (Python) XSL |
calculaaddress.py fixwsdl.xsl |
streaming | Demonstra uma configuração de streaming HTTP. | nenhum | nenhum |
target-reroute | Demonstra o uso de JavaScript para selecionar dinamicamente um URL de destino com base no conteúdo de uma mensagem de solicitação. | ExtractVariables JavaScript |
rewriteTargetUrl.js |
twitter-mobile-timeline | Demonstra como usar o JavaScript para remover parâmetros desnecessários de tweets, resultando em uma linha do tempo simplificada do Twitter e compatível com dispositivos móveis limitados por recursos. | AssignMessage JavaScript |
MobileTimeline.js |
twitter-oembed | Transforma as respostas da linha do tempo (por exemplo, de status/user_timeline.json) em uma resposta do oEmbed que contém os dados da linha do tempo como conteúdo HTML avançado. | AssignMessage JavaScript |
pesquisar-oembed.js |
variáveis | Demonstra como extrair e definir variáveis com base no transporte e no conteúdo de mensagem JSON e XML. | AssignMessage ExtractVariables XMLToJSON |
minimize.js |
xmltojson (em inglês) | Converte dados de resposta de XML para JSON. | XMLToJSON JSONToXML |
nenhum |
|
Arquivos de esquema XML que podem ser usados como referência ao configurar proxies, políticas, produtos de API e perfis de desenvolvedor e de app. |
||
|
Contém uma ferramenta de implantação, deploy.py, que importa um proxy de API para uma organização na Apigee Edge e o implanta no ambiente especificado. |
||
|
A ferramenta de snapshot da organização recupera as configurações da organização, incluindo desenvolvedores, produtos de API, hosts virtuais, mapas de chave-valor etc. Ela pode ser usada para fazer backup dos detalhes de uma organização ou para descobrir as configurações dela. |
Apigee-127
Se você é um codificador, com a Apigee-127, você aprende a codificar proxies de API com Node.js e Swagger. Você também encontra exemplos da a127 no GitHub: https://github.com/apigee-127/a127-samples.
Compartilhe sua experiência
Compartilhe suas experiências no Fórum de desenvolvedores da Apigee.