Estás viendo la documentación de Apigee Edge.
Ir a la documentación de
Apigee X. info
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.
En el siguiente ejemplo de JavaScript, se establece la ruta de la solicitud HTTP en el valor de la variable proxy.basepath.
request.headers["RequestPath"] = context.getVariable("proxy.basepath");Tipos de recursos
En la siguiente tabla, se resumen los tipos de recursos:
| Tipo de recurso | Descripción |
|---|---|
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 |
Hosted target (hosted) |
Archivos de Node.js para implementar en Hosted Targets. Puedes implementar Node.js como aplicaciones de destino de backend de Edge. |
Node (node) |
Archivos de Node.js, incluido el archivo principal de Node.js, los archivos fuente relacionados y las dependencias de módulos |
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). |
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
Los recursos se pueden almacenar en una de las siguientes tres ubicaciones:
- 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,
testoprod), los recursos están disponibles para cualquier proxy de API implementado en el mismo entorno. - Organización: Cuando se almacenan en una organización, los recursos están disponibles para cualquier proxy de API implementado en cualquier entorno.
Los repositorios están disponibles en los siguientes URIs, como se describe en la API de archivos de recursos y, luego, en Administra recursos con la API:
- Organización:
/organizations/{org}/resourcefiles - Entorno:
/organizations/{org}/environments/{env}/resourcefiles - Proxy de API:
/organizations/{org}/apis/{api}/revisions/{rev}/resources
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 | ||||||||
| Organización | ||||||||
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/jscResolución de nombres de recursos
Edge 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 y, luego, hasta el nivel de organización (solo en Edge).
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://{mgmt_server}:{port}/v1/organizations/{org}/environments/{env}/resourcefiles?name={jar_file}&type=java" \
-X POST \
--data-binary @{jar_file} \
-H "Content-Type: application/octet-stream" \
-u email:password
curl -v "http://{mgmt_server}:{port}/v1/organizations/{org}/environments/{env}/resourcefiles?name={jar_file}&type=java"
-X POST \
-H "Content-Type: application/octet-stream" \
-T "{jar_file}" \
-u email:password
curl -v "http://{mgmt_server}:{port}/v1/organizations/{org}/environments/{env}/resourcefiles?name={jar_file}&type=java"
-X POST \
-H "Content-Type: application/multipart/form-data" \
-F "file=@{jar_file}" \
-u email:password
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
Lineamientos de recursos de Node.js
Cuando haces referencia a una secuencia de comandos de Node.js en un proxy de API, lo haces con el elemento <ResourceURL> en la configuración de TargetEndpoint del proxy de API, como se describe en Cómo agregar Node.js a un proxy de API existente. Por ejemplo:
<ScriptTarget>
<ResourceURL>node://hello-world.js</ResourceURL>
</ScriptTarget>Ese script de Node.js y todos los módulos de asistencia deben residir en el alcance de la revisión del proxy de API
(en el directorio /resources/node del paquete del proxy). En el editor de proxy de API, agregar el recurso de Node.js a la sección Scripts permite lograr esto. Lo mismo sucede con el uso de la API (import y update) para almacenar el recurso en el alcance de la revisión del proxy de API.
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
Si deseas ver los recursos con alcance a una revisión de proxy de API, haz lo siguiente:
-
Accede a apigee.com/edge.
- 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 Resumen 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
Para crear recursos con alcance de 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.
- 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
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, haz clic en el recurso que quieres 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
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.
- Haga 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, un entorno o una organización (solo para Edge), como se describe en las siguientes secciones.
Crea recursos con alcance a una revisión de proxy de API mediante la API
Crea un recurso con alcance a una revisión de proxy de API con la API enviando una solicitud POST al siguiente recurso:
https://api.enterprise.apigee.com/v1/organizations/{org}/apis/{api}/revisions/{rev}/resourcefiles
Pasa la siguiente información con tu solicitud:
- Configura el parámetro de búsqueda
nameen el nombre del recurso. - Establece el parámetro de búsqueda
typeen el tipo de recurso requerido. - Pasa el contenido del archivo de recursos como
application/octet-streamomultipart/form-data.
En el siguiente ejemplo, se crea un archivo JavaScript llamado pathSetter.js para la revisión 1 del proxy de API helloworld:
curl -X POST https://api.enterprise.apigee.com/v1/organizations/myorg/apis/helloworld/revisions/1/resourcefiles?name=pathSetter.js&type=jsc
-H "Content-type:application/octet-stream" \
-d 'request.headers["RequestPath"] = context.getVariable("proxy.basepath");' \
-u email:password
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://api.enterprise.apigee.com/v1/organizations/myorg/apis/helloworld/revisions/1/resourcefiles?name=pathSetter.js&type=jsc -H "Content-type:multipart/form-data" \ -F file=@pathSetter.js \ -u email:password
A continuación, se proporciona un ejemplo de la respuesta de cualquiera de las llamadas a la API.
{
"name": "pathSetter.js",
"type": "jsc"
}Para obtener más información, consulta Cómo importar un archivo de recursos para una revisión de proxy de API.
Como alternativa, puedes usar la API de Update proxy de API revision de la siguiente manera:
- Crea el archivo de recursos.
- Agrega el archivo de recursos a un paquete de configuración del proxy de API.
- Sube el paquete con una de las siguientes APIs:
Crea recursos con alcance para un entorno mediante la API
Crea un recurso de JavaScript que tenga un alcance a un entorno con la API enviando 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
nameen el nombre del recurso. - Establece el parámetro de búsqueda
typeen el tipo de recurso requerido. - Pasa el contenido del archivo de recursos como
application/octet-streamomultipart/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://api.enterprise.apigee.com/v1/organizations/myorg/environments/test/resourcefiles?name=pathSetter.js&type=jsc
-H "Content-type:application/octet-stream" \
-d 'request.headers["RequestPath"] = context.getVariable("proxy.basepath");' \
-u email:password
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://api.enterprise.apigee.com/v1/organizations/myorg/environments/test/resourcefiles?name=pathSetter.js&type=jsc -H "Content-type:multipart/form-data" \ -F file=@pathSetter.js \ -u email:password
A continuación, se proporciona un ejemplo de la respuesta.
{ "name" : "pathSetter.js", "type" : "jsc" }
Crea recursos con alcance para la organización a través de la API
Para crear un recurso con alcance de una organización con la API, envía una solicitud POST al siguiente recurso:
https://api.enterprise.apigee.comv1/organizations/{org}/resourcefiles
Pasa la siguiente información con tu solicitud:
- Configura el parámetro de búsqueda
nameen el nombre del recurso. - Establece el parámetro de búsqueda
typeen el tipo de archivo de recursos (consulta Tipos de recursos). - Pasa el contenido del archivo de recursos como
application/octet-streamomultipart/form-data.
Para obtener más información, consulta Cómo importar un archivo de recursos para una organización.
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
Con la API, puedes ver los recursos con alcance a una revisión del proxy de API, un entorno o una organización.
Por ejemplo, para ver los recursos de los recursos con alcance de entorno a través de la API, envía una solicitud GET al siguiente recurso:
https://api.enterprise.apigee.com/v1/organizations/{org}/environments/{env}/resourcefiles
En el siguiente ejemplo, se enumeran todos los recursos en el entorno test:
curl -X GET "https://api.enterprise.apigee.com/v1/organizations/my-organization/environments/test/resourcefiles/{type}" \
-u email:passwordA continuación, se proporciona un ejemplo de la respuesta.
{
"resourceFile": [
{
"name" : "pathSetter.js",
"type" : "jsc"
}
]
}Visualiza el contenido de un recurso con la API
Visualiza el contenido de un recurso con la API, como se describe en las siguientes secciones.
Con la API, puedes ver los recursos con alcance a una revisión del proxy de API, un entorno o una organización.
Por ejemplo, para ver el contenido de un recurso en un entorno con la API, envía una solicitud GET al siguiente recurso:
https://api.enterprise.apigee.com/v1/organizations/{org}/environments/{env}/resourcefiles/{type}/name
En el siguiente ejemplo, se enumeran los contenidos del archivo de recursos JavaScript pathSetter.js en el entorno test:
curl -X GET https://api.enterprise.apigee.com/v1/organizations/myorg/environments/test/resourcefiles/jsc/pathSetter.js" \ -H "Accept: application/json" \ -u email:password
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, un entorno o una organización (solo para Edge), como se describe en las siguientes secciones.
Actualiza recursos con alcance a una revisión de proxy de API con la API
Actualiza un recurso con alcance a una revisión de proxy de API con la API enviando una solicitud PUT al siguiente recurso:
https://api.enterprise.apigee.com/v1/organizations/{org}/apis/{api}/revisions/{rev}/resourcefiles/{type}/{name}
Pasa el contenido del archivo de recursos como application/octet-stream o multipart/form-data.
En el siguiente ejemplo, se actualiza el recurso JavaScript llamado pathSetter para la revisión 1 del proxy de API helloworld:
curl -X PUT https://api.enterprise.apigee.com/v1/organizations/myorg/apis/helloworld/revisions/1/resourcefiles/jsc/pathSetter.js
-H "Content-type:application/octet-stream" \
-d 'request.headers["RequestPath"] = context.getVariable("proxy.basepath");' \
-u email:password
En el siguiente ejemplo, se muestra cómo actualizar 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 PUT https://api.enterprise.apigee.com/v1/organizations/myorg/apis/helloworld/revisions/1/resourcefiles/jsc/pathSetter.js -H "Content-type:multipart/form-data" \ -F file=@pathSetter.js \ -u email:password
A continuación, se proporciona un ejemplo de la respuesta de cualquiera de las llamadas a la API.
{
"name": "pathSetter.js",
"type": "jsc"
}Para obtener más información, consulta Cómo importar un archivo de recursos para una revisión de proxy de API.
Como alternativa, puedes usar la API de Update proxy de API revision de la siguiente manera:
- Descarga el paquete de configuración del proxy de API con la API de exportación de proxy de API con las siguientes opciones:
- Establece el parámetro de consulta
formatenbundle - Configura el encabezado
Acceptcomoapplication/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 con la API de actualización de la revisión del proxy de 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://api.enterprise.apigee.com/v1/organizations/myorg/environments/test/resourcefiles/jsc/pathSetter.js
-H "Content-type:application/octet-stream" \
-d 'request.headers["RequestPath"] = context.getVariable("proxy.basepath");' \
-u email:password
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://api.enterprise.apigee.com/v1/organizations/myorg/environments/test/resourcefiles/jsc/pathSetter.js -H "Content-type:multipart/form-data" \ -F file=@pathSetter.js \ -u email:password
A continuación, se proporciona un ejemplo de la respuesta.
{ "name" : "pathSetter.js", "type" : "jsc" }
Actualiza los recursos con alcance para la organización mediante la API
Para actualizar un recurso que tiene un alcance a una organización con la API, envía una solicitud POST al siguiente recurso:
https://api.enterprise.apigee.comv1/organizations/{org}/resourcefiles/{type}/{name}
Pasa el contenido del archivo de recursos como application/octet-stream o multipart/form-data.
Para obtener más información, consulta Cómo importar un archivo de recursos para una organización.
Borra recursos mediante la API
Borra el recurso con alcance a una revisión del proxy de API, un entorno o una organización (solo para Edge), como se describe en las siguientes secciones.
Borra recursos con alcance para una revisión de proxy de API mediante la API
Para borrar un recurso con alcance para una revisión de proxy de API mediante la API, envía una solicitud DELETE al siguiente recurso:
https://api.enterprise.apigee.com/v1/organizations/{org}/apis/{api}/revisions/{rev}/resourcefiles/{type}/{name}
En el siguiente ejemplo, se borra el archivo de recursos JavaScript pathSetter.js de la revisión 1 del proxy de API de helloworld:
curl -X GET "https://api.enterprise.apigee.com/v1/organizations/my-organization/apis/helloworld/revisions/1/resourcefiles/jsc/pathSetter.js" \ -u email:password
A continuación, se proporciona un ejemplo de la respuesta.
{
"name" : "pathSetter.js",
"type" : "jsc"
}Como alternativa, puedes usar la API de Update proxy de API revision de la siguiente manera:
- Descarga el paquete de configuración del proxy de API con la API de exportación de proxy de API con las siguientes opciones:
- Establece el parámetro de consulta
formatenbundle - Configura el encabezado
Acceptcomoapplication/zip.
- Establece el parámetro de consulta
- Borra el archivo de recursos del paquete de configuración del proxy de API.
- Sube el paquete con la API de actualización de la revisión del proxy de 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://api.enterprise.apigee.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 GET "https://api.enterprise.apigee.com/v1/organizations/my-organization/environments/test/resourcefiles/jsc/pathSetter.js" \ -u email:password
A continuación, se proporciona un ejemplo de la respuesta.
{
"name" : "pathSetter.js",
"type" : "jsc"
}Borra recursos con alcance para la organización mediante la API (solo para Edge)
Para borrar un recurso que tiene un alcance a una organización con la API, envía una solicitud DELETE al siguiente recurso:
https://api.enterprise.apigee.comv1/organizations/{org}/resourcefiles/{type}/{name}
Para obtener más información, consulta Borra un archivo de recursos de una organización.
Accede al recurso
La forma en la que accedes al recurso depende del tipo de recurso. Para obtener más información, consulte la documentación de la política correspondiente.
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.