Esta página aplica-se ao Apigee e ao Apigee Hybrid.
Veja a documentação do
Apigee Edge.
Pode adicionar código em linguagens processuais, como JavaScript, Java e Python, e, em seguida, chamar esse código a partir de outras partes de um proxy de API. O suporte para código processual foi concebido para facilitar a implementação do processamento complexo de variáveis de fluxo, falhas e corpos de pedidos e respostas.
Com o código processual, pode:
- Criar ou manipular valores de corpo complexos, como valores de pedidos e respostas.
- Reescrever URLs, por exemplo, para ocultar um URL de ponto final de destino.
- Adicionar outra lógica não disponível com as políticas incluídas.
Como funciona
Usa uma política específica do idioma para fazer chamadas de um fluxo de proxy para o seu código incluído. Para cada um dos idiomas suportados, o Apigee inclui uma política separada: Política de JavaScript, Política JavaCallout e Política PythonScript.
A descrição seguinte explica, a um nível elevado, uma forma de funcionamento. Consulte as referências da política para ver mais detalhes.
- Num ficheiro separado, escreva o código que vai usar.
- No seu código, coloque o resultado do processamento do código numa variável de fluxo do Apigee.
Vai obter o valor da variável noutro local no proxy de API. Para saber mais sobre as variáveis de fluxo, consulte o artigo Gerir o estado do proxy com variáveis de fluxo.
- Adicione o seu ficheiro (ou JAR) como um ficheiro de recursos ao seu proxy de API.
Para saber mais sobre ficheiros de recursos, consulte o artigo Ficheiros de recursos.
- Adicione a política correspondente ao idioma que está a usar.
Configure a política para fazer uma chamada ao seu código a partir do local pretendido no fluxo do proxy da API.
- Use uma política para obter o valor do código a partir da variável de fluxo.
Limitações
O modelo de segurança do Apigee não permite chamadas de sistema, como E/S de rede, leituras/escritas do sistema de ficheiros, informações do utilizador atual, lista de processos e utilização de CPU/memória. Embora algumas destas chamadas possam ser funcionais, não são suportadas e podem ser ativamente desativadas em qualquer altura. Para garantir a compatibilidade futura, deve evitar fazer essas chamadas no seu código.
Podem existir outras limitações para cada idioma suportado, conforme descrito na referência da política correspondente do idioma.
Idiomas suportados
JavaScript
O suporte para JavaScript inclui um modelo de objeto completo para processar variáveis e valores específicos de um proxy de API. Para mais informações, consulte o modelo de objeto JavaScript.
Para ver informações de referência e exemplos de políticas, consulte a Política de JavaScript.
Java
Use a política JavaCalloutpara fazer chamadas para código Java a partir do fluxo do seu proxy. O tópico de referência da política inclui exemplos.
Python
Use a política de script Python para chamar código Python.