Esta página se aplica a Apigee y Apigee Hybrid.
Consulta la documentación de Apigee Edge.
Comprende y administra recursos, como se describe en las siguientes secciones.
Información acerca de los recursos
Muchos tipos de políticas dependen de los recursos. Los recursos son los archivos que implementan el código o la configuración que debe ejecutar una política cuando se adjunta a un proxy de API. En algunos casos, al igual que con JavaScript y JavaCallout, una política solo define un punto de adjunto en un proxy de API en el que se debe ejecutar algún código. La política de JavaScript o JavaCallout es un puntero a un recurso.
Tipos de recursos
En la siguiente tabla, se resumen los tipos de recursos:
Tipo de recurso | Descripción |
---|---|
GraphQL (graphql) |
Archivo de esquema GraphQL al que se hace referencia en las políticas de GraphQL. |
JAR (java) |
Clases de Java en un archivo JAR a las que hacen referencia las políticas JavaCallout. |
JavaScript (js) |
JavaScript al que se hace referencia en las políticas JavaScript |
JavaScript (jsc) |
JavaScript compilado al que se hace referencia en las políticas JavaScript |
OpenAPI Specification (oas) |
Especificación de OpenAPI usada para validar los mensajes de solicitud y respuesta de tipo JSON o YAML. |
Property Set (properties) |
Colección de pares clave-valor a los que se puede hacer referencia con un conjunto de propiedades de proxy de API. |
Python (py) |
Secuencias de comandos de Python a las que se hace referencia en políticas de PythonScript. Los recursos deben implementarse en “Python puro” (solo en el lenguaje Python). |
Security policy (securityPolicy) |
Política de seguridad personalizada a la que se hace referencia en políticas JavaCallout. |
WSDL (wsdl) |
Archivos WSDL a los que se hace referencia en políticas SOAPMessageValidation. |
XSD (xsd) |
Esquemas XML a los que se hace referencia en las políticas de SOAPMessageValidation. |
XSL Transformations (xsl) |
Transformaciones XSLT a los que se hace referencia en las políticas XSLTransform. |
Dónde se almacenan los recursos
Puedes almacenar recursos en las siguientes ubicaciones. No puedes almacenar archivos de recursos en una organización.
- Revisión del proxy de API: Los recursos están disponibles solo para las revisiones de proxy de API en las que se incluyen los recursos. Por ejemplo, puedes incluir un recurso JavaScript con la revisión 1 de un proxy de API y, luego, cambiar la implementación para usar una secuencia de comandos de Python en la revisión 2 del proxy. La revisión 1 tiene acceso solo al recurso de JavaScript, y la revisión 2 tiene acceso solo al recurso de Python.
- Entorno: Cuando se almacena en un entorno (por ejemplo,
test
oprod
), los recursos están disponibles para cualquier proxy de API implementado en el mismo entorno.
El repositorio de entorno está disponible en el siguiente URI, como se describe en la Genera una lista de API de archivos de recursos y, luego, en Administra recursos con la API: /organizations/$ORG/environments/$ENV/resourcefiles
En la siguiente tabla, se muestran los métodos que puedes usar a fin de crear, actualizar y borrar recursos para cada repositorio:
Repositorio | Crear | Ver | Actualizar | Borrar | ||||
---|---|---|---|---|---|---|---|---|
API | IU | API | IU | API | IU | API | IU | |
Revisión del proxy de API | ||||||||
Entorno |
Por ejemplo, todos los archivos de JavaScript disponibles para el entorno test
se almacenan en el siguiente repositorio y están disponibles para cualquier proxy de API que se ejecute en el entorno test
:
/organizations/$ORG/environments/test/resourcefiles/jsc
Resolución de nombres de recursos
Resuelve los nombres de recursos desde el alcance más específico al más general. Los nombres de recursos se resuelven “a lo largo de la cadena”, desde el nivel de revisión del proxy de API hasta el nivel de entorno.
Supongamos que propagaste el mismo recurso en dos repositorios distintos: la revisión del proxy de API y el entorno prod
.
Considera el proxy de API que está configurado con la siguiente política:
<Javascript name='PathSetterPolicy' timeLimit='200'> <ResourceURL>jsc://pathSetter.js</ResourceURL> </Javascript>
La referencia de la política no se puede resolver de forma explícita en un repositorio. Se resuelve el primer recurso en el alcance más detallado cuyo nombre coincide con el nombre del recurso en la política.
Por lo tanto, cuando el proxy de API se implemente en el entorno prod
, la política se resolverá en el recurso pathSetter.js
con alcance de entorno.
Cuando se implementa en el entorno test
, la política se resuelve en el recurso con alcance de revisión del proxy de API porque el recurso con alcance del entorno se encuentra en el entorno prod
, no en el entorno test
.
Lineamientos de recursos de Java
Puedes agregar recursos Java compilados como archivos JAR con varias opciones en curl, como la opción -F
, -T
o --data-binary
(no la opción -d
). Por ejemplo:
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}"
También consulta lo siguiente:
- Prácticas recomendadas de Java: Prácticas recomendadas para el diseño y el desarrollo del proxy de API
- Ejemplo de guía de soluciones de Java: Política de transformación de XSL
Administra recursos mediante la IU
Administra los recursos con alcance de una revisión de proxy de API mediante la IU, como se describe en las siguientes secciones.
Ve los recursos con la IU
Editor de proxies nuevo
Para ver los recursos con el Editor de proxies nuevo, haz lo siguiente:
Si usas la IU de Apigee en la consola de Cloud, selecciona Desarrollo de proxy > Proxies de API.
Si usas la IU clásica de Apigee, selecciona Desarrollar > Proxies de API y, en el panel Proxies, selecciona el entorno para el proxy cuyos recursos deseas ver.
Selecciona el proxy de API cuyos recursos deseas ver. Esto muestra la vista Descripción general del Editor de proxies.
- Haz clic en la pestaña Desarrollar:
- En el panel de la izquierda, desplázate hacia abajo hasta Recursos. Los recursos actuales se muestran debajo.
Editor de proxies clásico
Si deseas ver los recursos para una revisión de proxy de API mediante el Editor de proxies clásico, haz lo siguiente:
- Accede a la IU de Apigee.
- Selecciona Desarrollar > Proxies de API en la barra de navegación izquierda.
- Selecciona un proxy de API en la lista para el que deseas crear un recurso.
Se abrirá el editor de proxy de API y se mostrará la pestaña Descripción general de forma predeterminada. - Haz clic en la pestaña Desarrollar:
- Si es necesario, selecciona la revisión en el menú desplegable Revisión.
Los recursos con alcance a la revisión del proxy de API se enumeran en la sección Recursos en la vista del navegador.
Crea un recurso mediante la IU
Editor de proxies nuevo
Para crear un recurso con el Editor de proxies nuevo, haz lo siguiente:
Si usas la IU de Apigee en la consola de Cloud, selecciona Desarrollo de proxy > Proxies de API.
Si usas la IU clásica de Apigee, selecciona Desarrollar > Proxies de API y, en el panel Proxies, selecciona el entorno para el proxy cuyos recursos deseas ver.
Selecciona el proxy de API cuyos recursos deseas ver. Esto muestra la vista Descripción general del Editor de proxies.
- Haz clic en la pestaña Desarrollar:
- En el panel de la izquierda, desplázate hacia abajo hasta Recursos y haz clic en el botón + a la derecha.
- En el diálogo Agregar recurso, ingresa lo siguiente:
- Tipo de recurso: selecciona el tipo de archivo para el recurso.
- En Fuente, selecciona Crear un archivo nuevo o Importar archivo. Si eliges Importar archivo, selecciona también un archivo para importar en el campo Archivo
- Nombre del recurso: ingresa un nombre para el recurso.
- Haz clic en Agregar.
Apigee clásico
Para crear recursos con alcance de una revisión de proxy de API mediante la IU clásica de Apigee, sigue estos pasos:
- Mira los recursos con alcance a la revisión del proxy de API.
- Haga clic en + en la sección Recursos de la vista de Navegador para abrir el diálogo Nuevo recurso.
- Ingrese lo siguiente:
Campo Descripción Fuente Selecciónalo para crear un archivo nuevo o importar uno. Tipo de archivo Selecciona un tipo de recurso de la lista desplegable. Nombre del archivo Nombre del archivo. La extensión del nombre del archivo debe ser válida para el tipo de archivo seleccionado.
Actualiza un recurso con la IU
Actualiza un recurso con alcance a una revisión del proxy de la API solo si no se implementó la revisión. Es inmutable después de implementar una revisión de proxy de API.
Para entregar un recurso con alcance a una revisión de proxy de API mediante la IU, haz lo siguiente:
- Mira los recursos con alcance a la revisión del proxy de API.
- En la vista de navegador, en Recursos, haga clic en el recurso que desea actualizar.
Nota: En el caso de los archivos JAR, coloca el cursor sobre el recurso que quieres editar y haz clic en . - Actualiza el recurso, según sea necesario.
Nota: Después de subir un archivo JAR nuevo, haz clic en Actualizar.
Borra un recurso mediante la IU
Borra un recurso con alcance a una revisión del proxy de la API solo si no se implementó la revisión. Es inmutable después de implementar una revisión de proxy de API.
Para entregar un recurso con alcance a una revisión de proxy de API mediante la IU, haz lo siguiente:
- Mira los recursos con alcance a la revisión del proxy de API.
- En la vista del navegador de Recursos, coloca el cursor sobre el recurso que quieres borrar para ver el menú de acciones.
- Haz clic en .
- Haz clic en Borrar para confirmar la acción.
Administra recursos mediante la API
Administra los recursos mediante la API, como se describe en las siguientes secciones.
Crea recursos con la API
Crea recursos con alcance a una revisión del proxy de API o un entorno, como se describe en las siguientes secciones.
Crea recursos con alcance a una revisión de proxy de API mediante la API
Crea recursos con alcance de una revisión de proxy de API mediante la API, como se describe en las siguientes secciones.Para actualizar un recurso con alcance de una revisión de proxy de API mediante la API, sigue estos pasos:
- Crea el archivo de recursos.
- Agrega el archivo de recursos a un paquete de configuración del proxy de API.
- Sube el paquete mediante una de las siguientes API:
Crea recursos con alcance para un entorno mediante la API
Crea recursos con alcance de un entorno con la API mediante el envío de una solicitud POST
al siguiente recurso:
/organizations/$ORG/environments/$ENV/resourcefiles
Pasa la siguiente información con tu solicitud:
- Configura el parámetro de búsqueda
name
en el nombre del recurso. - Establece el parámetro de búsqueda
type
en el tipo de recurso requerido. - Pasa el contenido del archivo de recursos como
application/octet-stream
omultipart/form-data
.
En el siguiente ejemplo, se muestra la forma de actualizar un recurso de JavaScript si pasas su contenido en el cuerpo de la solicitud.
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");'
En el ejemplo anterior, $TOKEN
está configurado como tu token de acceso de OAuth 2.0, como se describe en Obtén un token de acceso de OAuth 2.0. Para obtener información sobre las opciones de curl
que se usan en este ejemplo, consulta Usa curl. Si deseas obtener una descripción de las variables de entorno que se usaron, consulta Configura variables de entorno para solicitudes a la API de Apigee.
En el siguiente ejemplo, se muestra cómo subir el recurso como archivo desde tu máquina local. Es importante usar -F
para la carga binaria en curl a fin de que la política de JavaScript pueda acceder a los archivos de JavaScript con alcance de entorno o de organización.
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
A continuación, se proporciona un ejemplo de la respuesta.
{ "name" : "pathSetter.js", "type" : "jsc" }
Ve recursos con la API
En las siguientes secciones, se describe cómo ver recursos mediante la API.
Ve todos los recursos con la API
Mira todos los recursos con alcance a un entorno mediante la API, como se describe en las siguientes secciones.
Si usas la API, puedes ver los recursos con alcance a un entorno solamente.
Para ver todos los recursos en un entorno mediante la API, envía una solicitud GET
al siguiente recurso:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/resourcefiles
En el siguiente ejemplo, se enumeran todos los recursos en el entorno test
:
curl -X GET https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles
-H "Authorization: Bearer $TOKEN"
En el ejemplo anterior, $TOKEN
está configurado como tu token de acceso de OAuth 2.0, como se describe en Obtén un token de acceso de OAuth 2.0. Para obtener información sobre las opciones de curl
que se usan en este ejemplo, consulta Usa curl. Para obtener una descripción de las variables de entorno utilizadas, consulta Configura variables de entorno para solicitudes a la API de Apigee.
Para obtener más información, consulta API de archivos de recursos del entorno de lista.
A continuación, se proporciona un ejemplo de la respuesta.
{
"resourceFile": [
{
"name" : "pathSetter.js",
"type" : "jsc"
}
]
}
Visualiza el contenido de un recurso con la API
Para ver el contenido de un recurso en un entorno con la API, envía una solicitud GET
al siguiente recurso:
/organizations/$ORG/environments/$ENV/resourcefiles/$TYPE/$NAME
En el siguiente ejemplo, se enumeran los contenidos del archivo JavaScript pathSetter.js
(jsc
) en el entorno test
:
curl -X GET https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles/jsc/pathSetter.js
-H "Authorization: Bearer $TOKEN"
En el ejemplo anterior, $TOKEN
está configurado como tu token de acceso de OAuth 2.0, como se describe en Obtén un token de acceso de OAuth 2.0. Para obtener información sobre las opciones de curl
que se usan en este ejemplo, consulta Usa curl. Para obtener una descripción de las variables de entorno utilizadas, consulta Configura variables de entorno para solicitudes a la API de Apigee.
A continuación, se proporciona un ejemplo de la respuesta.
request.headers["RequestPath"] = context.getVariable("proxy.basepath");
Actualiza recursos mediante la API
Actualiza recursos con alcance a una revisión del proxy de API o un entorno, como se describe en las siguientes secciones.
Actualiza recursos con alcance a una revisión de proxy de API con la API
Para actualizar un recurso con alcance de una revisión de proxy de API mediante la API, sigue estos pasos:
- Descarga el paquete de configuración del proxy de API mediante Obtén la API de revisión de proxy de API con las siguientes opciones:
- Establece el parámetro de consulta
format
enbundle
- Configura el encabezado
Accept
comoapplication/zip
.
- Establece el parámetro de consulta
- Actualiza el archivo de recursos en el paquete de configuración del proxy de API.
- Sube el paquete de configuración del proxy de API mediante la API de actualización de la revisión del proxy de la API.
Actualiza los recursos con alcance para un entorno mediante la API
Actualiza un recurso que tiene un alcance a un entorno con una API mediante la emisión de una solicitud PUT
al siguiente recurso: /organizations/$ORG/environments/$ENV/resourcefiles/$TYPE/$NAME
Pasa el contenido del archivo de recursos como application/octet-stream
o multipart/form-data
.
En el siguiente ejemplo, se muestra la forma de actualizar un recurso de JavaScript si pasas su contenido en el cuerpo de la solicitud.
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");'
En el ejemplo anterior, $TOKEN
está configurado como tu token de acceso de OAuth 2.0, como se describe en Obtén un token de acceso de OAuth 2.0. Para obtener información sobre las opciones de curl
que se usan en este ejemplo, consulta Usa curl. Si deseas obtener una descripción de las variables de entorno que se usaron, consulta Configura variables de entorno para solicitudes a la API de Apigee.
En el siguiente ejemplo, se muestra cómo actualizar el archivo de recursos mediante un archivo de tu máquina local. Es importante usar -F
para la carga binaria en curl a fin de que la política de JavaScript pueda acceder a los archivos de JavaScript con alcance de entorno o de organización.
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
A continuación, se proporciona un ejemplo de la respuesta.
{ "name" : "pathSetter.js", "type" : "jsc" }
Borra recursos mediante la API
Borra el recurso con alcance a una revisión del proxy de API o a un entorno, como se describe en las siguientes secciones.
Borra recursos con alcance para una revisión de proxy de API mediante la API
Con Hybrid, para borrar un recurso con alcance a un proxy de API mediante la API, haz lo siguiente:
- Descarga el paquete de configuración del proxy de API mediante Obtén la API de revisión de proxy de API con las siguientes opciones:
- Establece el parámetro de consulta
format
enbundle
- Configura el encabezado
Accept
comoapplication/zip
.
- Establece el parámetro de consulta
- Borra el archivo de recursos del paquete de configuración del proxy de API.
- Sube el paquete de configuración del proxy de API mediante la API de actualización de la revisión del proxy de la API.
Borra un recurso con alcance para un entorno mediante la API
Borra un recurso con alcance de entorno con la API, como se describe en las siguientes secciones.
Para borrar un recurso con alcance de entorno mediante la API, envía una solicitud DELETE
al siguiente recurso:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/resourcefiles/$TYPE/$NAME
En el siguiente ejemplo, se borra el archivo de recursos JavaScript pathSetter.js
del entorno test
:
curl -X DELETE https://apigee.googleapis.com/v1/organizations/my-organization/environments/test/resourcefiles/jsc/pathSetter.js \ -H "Authorization: Bearer $TOKEN"
En el ejemplo anterior, $TOKEN
está configurado como tu token de acceso de OAuth 2.0, como se describe en Obtén un token de acceso de OAuth 2.0. Para obtener información sobre las opciones de curl
que se usan en este ejemplo, consulta Usa curl. Para obtener una descripción de las variables de entorno utilizadas, consulta Configura variables de entorno para solicitudes a la API de Apigee.
Para obtener más información, consulta Borra la API de archivo de recursos.
A continuación, se proporciona un ejemplo de la respuesta.
{
"name" : "pathSetter.js",
"type" : "jsc"
}
Accede al recurso
La forma en la que accedes al recurso depende del tipo de recurso. Para obtener más información, consulta la Descripción general de la referencia de políticas.
En los ejemplos de esta sección, se muestra cómo crear y administrar un recurso de JavaScript llamado pathSetter.js
para permitir que se haga referencia a él en las políticas de tipo JavaScript.
Para adjuntar el código JavaScript al PostFlow de solicitud, crea una política llamada PathSetterPolicy.xml
que haga referencia al archivo pathSetter.js
:
<Javascript name='PathSetterPolicy' timeLimit='200'> <ResourceURL>jsc://pathSetter.js</ResourceURL> </Javascript>
Luego, haz referencia a la política en la Configuración de extremos:
<PostFlow> <Request> <Step><Name>PathSetterPolicy</Name></Step> </Request> <PostFlow>
Para obtener más información, consulta la política de JavaScript.