Gerir recursos

Esta página aplica-se ao Apigee e ao Apigee Hybrid.

Veja a documentação do Apigee Edge.

Compreenda e faça a gestão dos recursos, conforme descrito nas secções seguintes.

Acerca dos recursos

Muitos tipos de políticas dependem de recursos. Os recursos são os ficheiros que implementam o código ou a configuração a serem executados por uma política quando anexados a um proxy de API. Em alguns casos, como com JavaScript e JavaCallout, uma política define simplesmente um ponto de anexação num proxy de API onde algum código deve ser executado. A política JavaScript ou JavaCallout é um ponteiro para um recurso.

Tipos de recursos

A tabela seguinte resume os tipos de recursos:

Tipo do recurso Descrição
GraphQL (graphql) Ficheiro de esquema GraphQL referenciado pelas políticas GraphQL.
JAR (java) Classes Java num ficheiro JAR referenciado por políticas JavaCallout.
JavaScript (js) JavaScript referenciado por políticas de JavaScript.
JavaScript (jsc) JavaScript compilado referenciado por políticas de JavaScript.
OpenAPI Specification (oas) Especificação OpenAPI usada para validar mensagens de pedido e resposta do tipo JSON ou YAML.
Property Set (properties) Coleção de pares de chave/valor que podem ser referenciados por conjuntos de propriedades de um proxy de API.
Python (py) Scripts Python referenciados por políticas PythonScript. Os recursos têm de ser implementados em "Python puro" (apenas na linguagem Python).
Security policy (securityPolicy) Política de segurança personalizada referenciada por políticas JavaCallout.
WSDL (wsdl) Ficheiros WSDL referenciados por políticas de validação de mensagens SOAP.
XSD (xsd) Esquemas XML referenciados pelas políticas SOAPMessageValidation.
XSL Transformations (xsl) Transformações XSLT referenciadas por políticas XSLTransform.

Onde são armazenados os recursos

Pode armazenar recursos nas seguintes localizações. Não pode armazenar ficheiros de recursos numa organização.

  • Revisão do proxy da API: os recursos estão disponíveis apenas para as revisões do proxy da API nas quais os recursos estão incluídos. Por exemplo, pode incluir um recurso JavaScript com a revisão 1 de um proxy de API e, em seguida, alterar a implementação para usar um script Python na revisão 2 do proxy. A revisão 1 tem acesso apenas ao recurso JavaScript e a revisão 2 tem acesso apenas ao recurso Python.
  • Ambiente: quando armazenados num ambiente (por exemplo, test ou prod), os recursos estão disponíveis para qualquer proxy de API implementado no mesmo ambiente.

O repositório do ambiente está disponível no seguinte URI, conforme descrito pela API de ficheiros de recursos de lista e mais tarde em Faça a gestão de recursos através da API: /organizations/$ORG/environments/$ENV/resourcefiles

A tabela seguinte mostra os métodos que pode usar para criar, atualizar e eliminar recursos para cada repositório:

Repositório Criar Ver Atualizar Eliminar
API IU API IU API IU API IU
Revisão do proxy de API
Ambiente

Por exemplo, todos os ficheiros JavaScript disponíveis para o ambiente test são armazenados no seguinte repositório e estão disponíveis para qualquer proxy de API em execução no ambiente test:

/organizations/$ORG/environments/test/resourcefiles/jsc

Resolução do nome do recurso

Resolva os nomes dos recursos do âmbito mais específico para o âmbito mais geral. Os nomes dos recursos são resolvidos "na hierarquia", desde o nível de revisão do proxy da API até ao nível do ambiente.

Suponhamos que preencheu o mesmo recurso em dois repositórios diferentes: a revisão do proxy de API e o ambiente prod.

Considere o proxy de API configurado com a seguinte política:

<Javascript name='PathSetterPolicy' timeLimit='200'>
    <ResourceURL>jsc://pathSetter.js</ResourceURL>
</Javascript>

Não é possível resolver explicitamente a referência da política para um repositório. O primeiro recurso no âmbito mais detalhado cujo nome corresponda ao nome do recurso na política é resolvido.

Assim, quando o proxy de API é implementado no ambiente prod, a política é resolvida para o recurso pathSetter.js com âmbito do ambiente.

Quando implementada no ambiente test, a política é resolvida para o recurso com âmbito de revisão do proxy de API, porque o recurso com âmbito de ambiente está no ambiente prod e não no ambiente test.

Diretrizes de recursos Java

Pode adicionar recursos Java compilados como ficheiros JAR através de várias opções no curl, como a opção -T, --data-binary ou -F (não a opção -d). Por exemplo:

curl "http://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/resourcefiles?name={jar_file}&type=java" \  -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/octet-stream" \
  --data-binary @{jar_file}
curl "http://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/resourcefiles?name={jar_file}&type=java" \  -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/octet-stream" \
  -T "{jar_file}"
curl "http://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/resourcefiles?name={jar_file}&type=java" \  -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/octet-stream" \
  -F "file=@{jar_file}"

Veja também:

Faça a gestão de recursos através da IU

Faça a gestão de recursos com âmbito numa revisão do proxy de API através da IU, conforme descrito nas secções seguintes.

Veja recursos através da IU

Apigee na Cloud Console

  1. Na Google Cloud consola, aceda à página Desenvolvimento de proxy > Proxies de API.

    Aceda aos proxies de API

  2. Selecione o proxy da API cujos recursos quer ver. É apresentada a vista Vista geral do editor de proxy.

  3. Clique no separador Desenvolver.
  4. No painel de navegação, desloque a página para baixo até Recursos. Os recursos atuais são apresentados abaixo.

IU clássica

Para ver os recursos com âmbito numa revisão do proxy de API através do editor de proxy clássico:

  1. Inicie sessão na IU do Apigee.
  2. Selecione Desenvolver > Proxies de API na barra de navegação do lado esquerdo.
  3. Selecione um proxy de API na lista para o qual quer criar um recurso.
    O editor de proxy de API é aberto e o separador Vista geral é apresentado por predefinição.
  4. Clique no separador Desenvolver.
  5. Se necessário, selecione a revisão no menu pendente Revisão.

    Os recursos com âmbito na revisão do proxy da API são apresentados na secção Recursos na vista Navigator.

Crie um recurso através da IU

Apigee na Cloud Console

Para criar um recurso através do Apigee na Cloud Console :

  1. Na Google Cloud consola, aceda à página Desenvolvimento de proxy > Proxies de API.

    Aceda aos proxies de API

  2. Selecione o proxy da API cujos recursos quer ver. É apresentada a vista Vista geral do editor de proxy.

  3. Clique no separador Desenvolver.
  4. No painel de navegação, desloque a página para baixo até Recursos e clique no botão + à sua direita.
  5. Na caixa de diálogo Adicionar recurso, introduza o seguinte:
    • Tipo de recurso: selecione o tipo de ficheiro para o recurso.
    • Em Origem, selecione Criar um novo ficheiro ou Importar ficheiro. Se escolher Ficheiro de importação, selecione também um ficheiro para importar no campo Ficheiro.
    • Nome do recurso: introduza um nome para o recurso.
  6. Clique em Adicionar.

Apigee clássico

Para criar recursos com âmbito numa revisão de proxy de API através da IU do Apigee clássico:

  1. Veja os recursos com âmbito na revisão do proxy da API.
  2. Clique em + na secção Recursos na vista Navegador para abrir a caixa de diálogo Novo recurso.
  3. Introduza os seguintes dados:
    Campo Descrição
    Origem Selecione para criar um novo ficheiro ou importar um ficheiro.
    Tipo de ficheiro Selecione um tipo de recurso na lista pendente.
    Nome do ficheiro Nome do ficheiro. A extensão do nome de ficheiro tem de ser válida para o tipo de ficheiro selecionado.

Atualize um recurso através da IU

Atualize um recurso com âmbito numa revisão do proxy de API apenas se a revisão não tiver sido implementada. Depois de implementar uma revisão do proxy de API, esta torna-se imutável.

Para atualizar um recurso com âmbito numa revisão do proxy de API através da IU:

  1. Veja os recursos com âmbito na revisão do proxy da API.
  2. Na vista Navigator, em Recursos, clique no recurso que quer atualizar.
    Nota: para ficheiros JAR, posicione o cursor sobre o recurso que quer editar e clique em Imagem do ícone de edição..
  3. Atualize o recurso, conforme necessário.
    Nota: depois de carregar um novo ficheiro JAR, clique em Atualizar.

Elimine um recurso através da IU

Elimine um recurso com âmbito numa revisão do proxy de API apenas se a revisão não tiver sido implementada. Depois de implementar uma revisão do proxy de API, esta torna-se imutável.

Para eliminar um recurso com âmbito de revisão de proxy de API através da IU:

  1. Veja os recursos com âmbito na revisão do proxy da API.
  2. Na vista do navegador, em Recursos, posicione o cursor sobre o recurso que quer eliminar para apresentar o menu de ações.
  3. Clique em Imagem do ícone de eliminação..
  4. Clique em Eliminar para confirmar a ação.

Faça a gestão de recursos através da API

Faça a gestão dos recursos através da API, conforme descrito nas secções seguintes.

Crie recursos através da API

Crie recursos com âmbito numa revisão do proxy de API ou num ambiente, conforme descrito nas secções seguintes.

Crie recursos com âmbito numa revisão do proxy de API através da API

Crie recursos com âmbito numa revisão do proxy de API através da API, conforme descrito nas secções seguintes.

Para criar um recurso com âmbito de uma revisão do proxy de API através da API:

  1. Crie o ficheiro de recursos.
  2. Adicione o ficheiro de recursos a um pacote de configuração de proxy de API.
  3. Carregue o pacote através de uma das seguintes APIs:

Crie recursos no âmbito de um ambiente através da API

Crie recursos com âmbito num ambiente através da API emitindo um pedido POST para o seguinte recurso: /organizations/$ORG/environments/$ENV/resourcefiles

Transmita as seguintes informações com o seu pedido:

  • Defina o parâmetro de consulta name com o nome do recurso
  • Defina o parâmetro de consulta type para o tipo de recurso necessário
  • Transmita o conteúdo do ficheiro de recursos como application/octet-stream ou multipart/form-data)

O exemplo seguinte mostra como criar um recurso JavaScript transmitindo o respetivo conteúdo no corpo do pedido.

curl -X POST https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles?name=pathSetter.js&type=jsc
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-type:application/octet-stream" \
  -d 'request.headers["RequestPath"] = context.getVariable("proxy.basepath");'

Onde $TOKEN está definido como a sua chave de acesso OAuth 2.0, conforme descrito em Obter uma chave de acesso OAuth 2.0. Para informações sobre as opções de curl usadas neste exemplo, consulte a secção Usar o curl. Para uma descrição das variáveis de ambiente que pode usar, consulte o artigo Definir variáveis de ambiente para pedidos de API Apigee.

O exemplo seguinte mostra como carregar o recurso como um ficheiro a partir do seu computador local. É importante usar -F para o carregamento binário no curl para que os ficheiros JavaScript com âmbito de organização ou ambiente sejam acessíveis pela política de JavaScript.

curl -X POST https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles?name=pathSetter.js&type=jsc
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-type:multipart/form-data" \
  -F file=@pathSetter.js

Segue-se um exemplo da resposta:

{
  "name" : "pathSetter.js",
  "type" : "jsc"
}

Veja recursos através da API

As secções seguintes descrevem como ver recursos através da API.

Veja todos os recursos através da API

Veja todos os recursos com âmbito num ambiente através da API, conforme descrito nas secções seguintes.

Ao usar a API, só pode ver recursos com âmbito num ambiente.

Para ver todos os recursos num ambiente através da API, emita um pedido GET para o seguinte recurso: https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/resourcefiles

O exemplo seguinte apresenta todos os recursos no ambiente test:

curl -X GET https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles
  -H "Authorization: Bearer $TOKEN"

Onde $TOKEN está definido como a sua chave de acesso OAuth 2.0, conforme descrito em Obter uma chave de acesso OAuth 2.0. Para informações sobre as opções de curl usadas neste exemplo, consulte a secção Usar o curl. Para uma descrição das variáveis de ambiente que pode usar, consulte o artigo Definir variáveis de ambiente para pedidos de API Apigee.

Para mais informações, consulte o artigo API List environment resource files.

Segue-se um exemplo da resposta.

{
  "resourceFile": [
{
  "name" : "pathSetter.js",
  "type" : "jsc"
}
  ]
}

Veja o conteúdo de um recurso através da API

Para ver o conteúdo de um recurso num ambiente através da API, emita um pedido GET para o seguinte recurso: /organizations/$ORG/environments/$ENV/resourcefiles/$TYPE/$NAME

O exemplo seguinte apresenta o conteúdo do ficheiro JavaScript pathSetter.js (jsc) no ambiente test:

curl -X GET https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles/jsc/pathSetter.js
  -H "Authorization: Bearer $TOKEN"

Onde $TOKEN está definido como a sua chave de acesso OAuth 2.0, conforme descrito em Obter uma chave de acesso OAuth 2.0. Para informações sobre as opções de curl usadas neste exemplo, consulte a secção Usar o curl. Para uma descrição das variáveis de ambiente que pode usar, consulte o artigo Definir variáveis de ambiente para pedidos de API Apigee.

Segue-se um exemplo da resposta:

request.headers["RequestPath"] = context.getVariable("proxy.basepath");

Atualize recursos através da API

Atualize os recursos com âmbito numa revisão do proxy de API ou num ambiente, conforme descrito nas secções seguintes.

Atualize recursos com âmbito de uma revisão do proxy de API através da API

Para atualizar um recurso com âmbito numa revisão do proxy de API através da API:

  1. Transfira o pacote de configuração do proxy da API através da API Get API proxy revision com as seguintes opções:
    • Defina o parâmetro de consulta format como bundle
    • Definir o cabeçalho Accept como application/zip
  2. Atualize o ficheiro de recursos no pacote de configuração do proxy de API.
  3. Carregue o pacote de configuração do proxy de API através da API Update API proxy revision.

Atualize recursos com âmbito num ambiente através da API

Atualize um recurso com âmbito num ambiente através da API emitindo um pedido PUT para o seguinte recurso: /organizations/$ORG/environments/$ENV/resourcefiles/$TYPE/$NAME

Transmita o conteúdo do ficheiro de recursos como application/octet-stream ou multipart/form-data.

O exemplo seguinte mostra como atualizar um recurso JavaScript transmitindo o respetivo conteúdo no corpo do pedido.

curl -X PUT https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles/jsc/pathSetter.js
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-type:application/octet-stream" \
  -d 'request.headers["RequestPath"] = context.getVariable("proxy.basepath");'

Onde $TOKEN está definido como a sua chave de acesso OAuth 2.0, conforme descrito em Obter uma chave de acesso OAuth 2.0. Para informações sobre as opções de curl usadas neste exemplo, consulte a secção Usar o curl. Para uma descrição das variáveis de ambiente que pode usar, consulte o artigo Definir variáveis de ambiente para pedidos de API Apigee.

O exemplo seguinte mostra como atualizar o ficheiro de recursos através de um ficheiro do seu computador local. É importante usar -F para o carregamento binário no curl para que os ficheiros JavaScript com âmbito de organização ou ambiente sejam acessíveis pela política de JavaScript.

curl -X PUT https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles/jsc/pathSetter.js
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-type:multipart/form-data" \
  -F file=@pathSetter.js

Segue-se um exemplo da resposta:

{
  "name" : "pathSetter.js",
  "type" : "jsc"
}

Elimine recursos através da API

Elimine o recurso com âmbito definido para uma revisão do proxy de API ou um ambiente, conforme descrito nas secções seguintes.

Elimine recursos com âmbito de uma revisão de proxy de API através da API

Com a abordagem híbrida, para eliminar um recurso com âmbito definido para um proxy de API através da API:

  1. Transfira o pacote de configuração do proxy da API através da API Get API proxy revision com as seguintes opções:
    • Defina o parâmetro de consulta format como bundle
    • Definir o cabeçalho Accept como application/zip
  2. Elimine o ficheiro de recursos do pacote de configuração do proxy de API.
  3. Carregue o pacote de configuração do proxy de API através da API Update API proxy revision.

Elimine um recurso com âmbito num ambiente através da API

Elimine um recurso com âmbito num ambiente através da API, conforme descrito nas secções seguintes.

Para eliminar um recurso com âmbito num ambiente através da API, emita um pedido DELETE para o seguinte recurso: https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/resourcefiles/$TYPE/$NAME

O exemplo seguinte elimina o ficheiro de recursos JavaScript pathSetter.js do ambiente test:

curl -X DELETE https://apigee.googleapis.com/v1/organizations/my-organization/environments/test/resourcefiles/jsc/pathSetter.js \
  -H "Authorization: Bearer $TOKEN"
  

Onde $TOKEN está definido como a sua chave de acesso OAuth 2.0, conforme descrito em Obter uma chave de acesso OAuth 2.0. Para informações sobre as opções de curl usadas neste exemplo, consulte a secção Usar o curl. Para uma descrição das variáveis de ambiente que pode usar, consulte o artigo Definir variáveis de ambiente para pedidos de API Apigee.

Para mais informações, consulte o artigo API Delete resource file.

Segue-se um exemplo da resposta.

{
  "name" : "pathSetter.js",
  "type" : "jsc"
}

Aceda ao recurso

A forma como acede ao recurso depende do tipo de recurso. Para mais informações, consulte a vista geral de referência das políticas.

Os exemplos nesta secção demonstram como criar e gerir um recurso JavaScript denominado pathSetter.js para permitir que seja referenciado por políticas do tipo JavaScript.

Para anexar o JavaScript ao Request PostFlow, crie uma política denominada PathSetterPolicy.xml que faça referência ao ficheiro pathSetter.js:

<Javascript name='PathSetterPolicy' timeLimit='200'>
    <ResourceURL>jsc://pathSetter.js</ResourceURL>
</Javascript>

Em seguida, consulte a política na configuração do ponto final:

<PostFlow>
  <Request>
    <Step><Name>PathSetterPolicy</Name></Step>
  </Request>
<PostFlow>

Para mais informações, consulte a política de JavaScript.