Estás consultando la documentación de Apigee y Apigee Hybrid.
Consulta la documentación de
Apigee Edge.
InvalidResourceUrlFormat
Mensaje de error
La implementación de un proxy de API a través de la interfaz de usuario o la API de Apigee falla y se muestra este mensaje de error:
Error Deploying Revision revision_number to environment Invalid resource url format. Resource url is invalid_URL.
Ejemplo de mensaje de error
Error Deploying Revision 1 to test
Invalid resource url format. Resource url is jsc:add_variables.js.
Captura de pantalla de ejemplo
Causa
Si el formato de la URL del recurso especificado en el elemento <ResourceURL>
o <IncludeURL>
de la política de JavaScript no es válido, se producirá un error en la implementación del proxy de API.
El formato correcto para especificar la URL del recurso es el que se muestra a continuación:
<ResourceURL>jsc://<file_name>.js</ResourceURL>
<IncludeURL>jsc://<file_name>.js</IncludeURL>
Por ejemplo, si el elemento <ResourceURL>
se especifica como se muestra a continuación, la implementación del proxy de API falla porque no sigue el patrón prescrito:
<ResourceURL>jsc:add_variables.js</ResourceURL>
Diagnóstico
Identifica el formato de URL de recurso no válido que se ha usado en la política de JavaScript. Puedes encontrar esta información en el mensaje de error. Por ejemplo, en el siguiente error, el formato de URL de recurso no válido es
jsc:add_variables.js
.Error Deploying Revision 1 to test Invalid resource url format. Resource url is jsc:add_variables.js.
Examina todas las políticas de JavaScript del proxy de API específico en el que se ha producido el error. Si hay alguna política de JavaScript en la que la URL del recurso especificada en el elemento
<ResourceURL>
o<IncludeURL>
coincida con la entrada no válida identificada en el paso 1 anterior, esa será la causa del error.Por ejemplo, la siguiente política especifica la URL del recurso como
jsc:add_variables.js
, que coincide con lo que aparece en el mensaje de error:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-TotalVariable"> <DisplayName>js-TotalVariable</DisplayName> <Properties/> <ResourceURL>jsc:add_variables.js</ResourceURL> </Javascript>
Como la URL del recurso se especifica como
jsc:add_variables.js
, que no es válida, la implementación del proxy de API falla y se muestra el siguiente error:Invalid resource url format. Resource url is jsc:add_variables.js.
Resolución
Asegúrate de que el formato de la URL del recurso especificado en el elemento <ResourceURL>
o <IncludeURL>
de la política de JavaScript sea válido. Por ejemplo:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-TotalVariable">
<DisplayName>js-TotalVariable</DisplayName>
<Properties/>
<ResourceURL>jsc://add_variables.js</ResourceURL>
</Javascript>
InvalidResourceUrlReference
Mensaje de error
La implementación de un proxy de API a través de la interfaz de usuario o la API de Apigee falla y se muestra este mensaje de error:
Error Deploying Revision revision_number to environment Invalid resource url ref invalid_reference in policy policy_name in org_name
Ejemplo de mensaje de error
Error Deploying Revision 8 to test
Invalid resource url ref jsc://dependent_js.js in policy js-TotalVariable in aprabhashankar-eval
Captura de pantalla de ejemplo
Causa
Si los elementos <ResourceURL>
y <IncludeURL>
hacen referencia a un archivo JavaScript que no existe, se producirá un error al implementar el proxy de API.
Si vas a implementar un paquete proxy desde tu máquina local, los archivos fuente de JavaScript deben almacenarse en /apiproxy/resources/jsc
. En este caso, los archivos de origen se limitan al proxy de API.
En la interfaz de usuario de Apigee, los archivos de origen de JavaScript aparecen en jsc en la sección Scripts del panel de navegación del editor de proxy de API. También puedes almacenar archivos de recursos en repositorios a nivel de entorno (por ejemplo, para que el código JavaScript esté disponible para todos los proxies de una organización o un entorno).
Este error se produce si no se encuentra ningún archivo de recursos especificado en la política en ninguno de los ámbitos disponibles (proxy o entorno).
Diagnóstico
Identifica la política de JavaScript en la que se ha producido el error y que contiene la referencia a la URL de recurso no válida. Puedes encontrar esta información en el mensaje de error. Por ejemplo, en el siguiente error, el nombre de la política es
js-TotalVariable
y la referencia de URL de recurso no válida esjsc://dependent_js.js
.Invalid resource url ref jsc://dependent_js.js in policy js-TotalVariable in aprabhashankar-eval
Verifica que la referencia de la URL del recurso especificada en la política de JavaScript fallida coincida con el valor identificado en el mensaje de error (paso 1 anterior). Por ejemplo, la siguiente política especifica la referencia de la URL del recurso como
jsc://dependent_js.js
, que coincide con lo que aparece en el mensaje de error:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-TotalVariable"> <DisplayName>js-TotalVariable</DisplayName> <Properties/> <ResourceURL>jsc://add_variables.js</ResourceURL> <IncludeURL>jsc://dependent_js.js</IncludeURL> </Javascript>
Comprueba si el archivo de origen identificado en el paso 1 forma parte del paquete de proxy de API específico o si existe en el ámbito del entorno.
- Para comprobar si el archivo forma parte del paquete de proxy de API específico, sigue uno de estos pasos:
- En la interfaz de usuario de Apigee, comprueba si este archivo está en la sección Scripts del proxy de API.
- Descarga el paquete de proxy de API y busca si el archivo existe.
- Si el archivo no forma parte del paquete de proxy de API específico, comprueba si existe en el nivel del entorno. Puedes usar la API Resource Files para esta investigación.
Si el archivo no existe en el nivel del proxy de API o del entorno, esa es la causa del error.
En el ejemplo descrito anteriormente, recuerda que el nombre de archivo JavaScript no válido es
dependent_js.js
. En la captura de pantalla que se muestra a continuación, observa que el archivo especificado como URL de recurso en la política no aparece en la sección Secuencias de comandos. Por lo tanto, no forma parte del proxy de API. Si el archivo tampoco existe a nivel de entorno, la implementación del proxy de API fallará y se mostrará el siguiente error:Invalid resource url ref jsc://dependent_js.js in policy js-TotalVariable in aprabhashankar-eval
- Para comprobar si el archivo forma parte del paquete de proxy de API específico, sigue uno de estos pasos:
Resolución
Asegúrate de que los archivos JavaScript especificados en los elementos <ResourceURL>
y <IncludeURL>
hagan referencia a un archivo válido que exista a nivel de proxy de API o de entorno.
Para corregir la política de JavaScript de ejemplo que se muestra arriba, añade el archivo dependent_js.js
al paquete del proxy de API. En la captura de pantalla que se muestra a continuación, puede ver que los archivos JavaScript especificados en los elementos <ResourceURL>
y <IncludeURL>
están visibles en la sección Scripts del paquete de proxy de API.
WrongResourceType
Mensaje de error
La implementación de un proxy de API a través de la interfaz de usuario o la API de Apigee falla y se muestra este mensaje de error:
Error Deploying Revision revision_number to environment Resource JavaScript_file is the wrong type. It is invalid_type: but JavaScript steps use type jsc:.
Ejemplo de mensaje de error
Error Deploying Revision 2 to test
Resource js_checkType.js is the wrong type. It is node: but JavaScript steps use type jsc:.
Captura de pantalla de ejemplo
Causa
Este error se produce durante la implementación si los elementos <ResourceURL>
y <IncludeURL>
de la política de JavaScript hacen referencia a un tipo de recurso que no sea jsc (archivo JavaScript).
Por ejemplo, si el elemento <IncludeURL>
se declara como se muestra a continuación, no se podrá implementar el proxy de API:
<IncludeURL>node://javascript-dependency.js</IncludeURL>
Esto se debe a que hace referencia a un tipo de recurso node
incorrecto.
Diagnóstico
Identifica el tipo de recurso no válido que se ha usado en la política de JavaScript. Puedes encontrar esta información en el mensaje de error. Por ejemplo, en el siguiente error, el tipo de recurso no válido es
node
.Resource js_checkType.js is the wrong type. It is node: but JavaScript steps use type jsc:.
Examina todas las políticas de JavaScript del proxy de API específico en el que se ha producido el error. Si hay alguna política de JavaScript en la que el recurso especificado en el elemento
<ResourceURL>
o<IncludeURL>
coincida con el tipo de recurso no válido identificado en el paso 1 anterior, esa será la causa del error.Por ejemplo, la siguiente política especifica el tipo de recurso como
node
, que coincide con lo que aparece en el mensaje de error:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-TotalVariable"> <DisplayName>js-TotalVariable</DisplayName> <Properties/> <ResourceURL>node://js_checkType.js</ResourceURL> <IncludeURL>jsc://javascript-dependency.js</IncludeURL> </Javascript>
Como el tipo de recurso se especifica como
node
, que no es válido, el despliegue del proxy de API falla y se muestra el siguiente error:Resource js_checkType.js is the wrong type. It is node: but JavaScript steps use type jsc:.
Resolución
Asegúrate de que los elementos <ResourceURL>
y <IncludeURL>
de la política de JavaScript siempre hagan referencia al tipo de recurso jsc
.
Para corregir el ejemplo anterior, modifique el elemento <ResourceURL>
para que tenga el tipo de recurso jsc
.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-TotalVariable">
<DisplayName>js-TotalVariable</DisplayName>
<Properties/>
<ResourceURL>jsc://js_checkType.js</ResourceURL>
<IncludeURL>jsc://javascript-dependency.js</IncludeURL>
</Javascript>
NoResourceURLOrSource
Mensaje de error
La implementación de un proxy de API a través de la interfaz de usuario o la API de Apigee falla y se muestra este mensaje de error:
Error Saving Revision revision_number Bundle is invalid. Errors:[Entity : Policy-policy_name, No ResourceURL or Source;].
Ejemplo de mensaje de error
Error Saving Revision 10
Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].
Captura de pantalla de ejemplo
Causa
La implementación de la política de JavaScript puede fallar y mostrar este error en los siguientes casos:
- Si el elemento
<ResourceURL>
no se ha declarado o si la URL del recurso no se ha definido en este elemento. El elemento<ResourceURL>
es obligatorio. - Se ha declarado el elemento
<IncludeURL>
, pero no se ha definido la URL del recurso en este elemento. El elemento<IncludeURL>
es opcional, pero, si se declara, la URL del recurso debe especificarse en el elemento<IncludeURL>
.
Por ejemplo, si el elemento <IncludeURL>
se declara como se muestra a continuación, no se podrá implementar el proxy de API:
<IncludeURL></IncludeURL>
Diagnóstico
Identifica la política de JavaScript en la que se ha producido el error. Puedes encontrar esta información en el mensaje de error. Por ejemplo, en el siguiente error, el nombre de la política es
Policy-js-example
:Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].
En el archivo XML de la política de JavaScript que ha fallado, realiza las siguientes comprobaciones:
- El elemento
<ResourceURL>
debe declararse y debe tener definida la URL del recurso. - Si se declara el elemento
<IncludeURL>
, debe especificar una URL de recurso en él. No es necesario declarar el elemento<IncludeURL>
.
Si falla alguna de las comprobaciones anteriores, esa será la causa del error.
Ejemplo 1: La siguiente política no tiene declarado el elemento
<ResourceURL>
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-example"> <DisplayName>js-example</DisplayName> <Properties/> </Javascript>
Como no se ha declarado el elemento
<ResourceURL>
, el despliegue del proxy de API falla y se muestra el siguiente error:Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].
Ejemplo 2: La siguiente política tiene un elemento
<IncludeURL>
vacío.- El elemento
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-example">
<DisplayName>js-example</DisplayName>
<Properties/>
<ResourceURL>jsc://check_var.js</ResourceURL>
<IncludeURL></IncludeURL>
</Javascript>
Como el elemento <IncludeURL>
no tiene la URL del recurso, la implementación del proxy de API falla y se produce el siguiente error:
Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].
Resolución
Asegúrese de que se cumpla lo siguiente en la política de JavaScript:
- El elemento
<ResourceURL>
se declara y la URL del recurso se define en este elemento. El elemento<ResourceURL>
es obligatorio. Si se declara el elemento
<IncludeURL>
, la URL del recurso incluido debe definirse en este elemento. El elemento<IncludeURL>
es opcional, pero, si se declara, la URL del recurso debe especificarse en él.<IncludeURL>
Para corregir el ejemplo 1 que se muestra arriba, incluya el elemento
<ResourceURL>
con un archivo JavaScript válido:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-example"> <DisplayName>js-example</DisplayName> <Properties/> <ResourceURL>jsc://check_var.js</ResourceURL> </Javascript>
Para corregir el ejemplo 2 que se muestra arriba, incluya un archivo JavaScript válido en el elemento
<IncludeURL>
.<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-example"> <DisplayName>js-example</DisplayName> <Properties/> <ResourceURL>jsc://check_var.js</ResourceURL> <IncludeURL>jsc://js_dependency.js</IncludeURL> </Javascript>