Вы просматриваете документацию по Apigee Edge.
Перейдите к документации по Apigee X. Информация
InvalidResourceUrlFormat
Сообщение об ошибке
Развертывание прокси-сервера API через интерфейс Edge или API управления Edge завершается неудачно с сообщением об ошибке:
Error Deploying Revision revision_number to environment Invalid resource url format. Resource url is invalid_URL.
Пример сообщения об ошибке
Error Deploying Revision 1 to test
Invalid resource url format. Resource url is jsc:add_variables.js.
Пример скриншота

Причина
Если формат URL ресурса, указанного в элементе <ResourceURL> или <IncludeURL> правила JavaScript, недопустим, развертывание прокси-сервера API завершится неудачей.
URL ресурса должен быть указан в следующем формате:
<ResourceURL>jsc://<file_name>.js</ResourceURL>
<IncludeURL>jsc://<file_name>.js</IncludeURL>
Например, если элемент <ResourceURL> указан так, как показано ниже, развертывание прокси-сервера API завершится неудачно, поскольку он не соответствует заданному шаблону:
<ResourceURL>jsc:add_variables.js</ResourceURL>
диагностика;
Определите недопустимый формат URL ресурса, используемый в правилах JavaScript. Эту информацию можно найти в сообщении об ошибке. Например, в приведенной ниже ошибке недействительный формат URL ресурса –
jsc:add_variables.js.Error Deploying Revision 1 to test Invalid resource url format. Resource url is jsc:add_variables.js.Проверьте все правила JavaScript в определенном прокси API, где произошла ошибка. Если в каком-либо правиле JavaScript URL ресурса, указанный в элементе
<ResourceURL>или<IncludeURL>, совпадает с недопустимой записью, выявленной на шаге 1, то это и есть причина ошибки.Например, в приведенном ниже правиле URL ресурса указан как
jsc:add_variables.js, что соответствует сообщению об ошибке:<?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>Поскольку URL ресурса указан как
jsc:add_variables.js, что недопустимо, развертывание прокси API завершается неудачно с ошибкой:Invalid resource url format. Resource url is jsc:add_variables.js.
Разрешение
Убедитесь, что формат URL ресурса, указанный в элементе <ResourceURL> или <IncludeURL> правила JavaScript, действителен. Пример:
<?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
Сообщение об ошибке
Развертывание прокси-сервера API через интерфейс Edge или API управления Edge завершается неудачно с сообщением об ошибке:
Error Deploying Revision revision_number to environment Invalid resource url ref invalid_reference in policy policy_name in org_name
Пример сообщения об ошибке
Error Deploying Revision 8 to test
Invalid resource url ref jsc://dependent_js.js in policy js-TotalVariable in aprabhashankar-eval
Пример скриншота

Причина
Если элементы <ResourceURL> и <IncludeURL> ссылаются на несуществующий файл JavaScript, развертывание прокси-сервера API завершится неудачно.
Если вы развертываете пакет прокси-сервера с локального компьютера, исходные файлы JavaScript должны храниться в каталоге /apiproxy/resources/jsc. В этом случае исходные файлы относятся к прокси-серверу API.
В интерфейсе Edge исходные файлы JavaScript отображаются в разделе "Скрипты" под элементом jsc на панели навигации редактора прокси-сервера API. Вы также можете хранить файлы ресурсов в репозиториях на уровне организации и среды (например, чтобы сделать код JavaScript доступным для всех прокси в организации или среде).
Эта ошибка возникает, если ни в одной из доступных областей (прокси-сервер, среда или организация) не удается найти ни один из файлов ресурсов, указанных в правиле.
диагностика;
Определите правило JavaScript, в котором произошла ошибка и которое содержит недопустимую ссылку на URL ресурса. Эту информацию можно найти в сообщении об ошибке. Например, в приведенной ниже ошибке название правила –
js-TotalVariable, а недопустимый URL ресурса –jsc://dependent_js.js.Invalid resource url ref jsc://dependent_js.js in policy js-TotalVariable in aprabhashankar-evalУбедитесь, что ссылка на URL ресурса, указанная в невыполненном правиле JavaScript, соответствует значению, указанному в сообщении об ошибке (шаг 1 выше). Например, в следующем правиле URL ресурса указан как
jsc://dependent_js.js, что соответствует сообщению об ошибке:<?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>Проверьте, входит ли исходный файл, указанный на шаге 1, в определенный пакет прокси API или существует на уровне организации или среды.
- Чтобы проверить, входит ли файл в определенный пакет прокси API, выполните одно из следующих действий:
- В интерфейсе Edge проверьте, есть ли этот файл в разделе Scripts прокси-сервера API.
- Скачайте пакет прокси API и проверьте, есть ли в нем нужный файл.
- Если файл не входит в определенный пакет прокси API, проверьте, существует ли он на уровне организации или среды. Для этого можно использовать Resource Files API.
Если файла нет на уровне прокси API, организации или среды, это и является причиной ошибки.
В описанном выше примере недопустимое название файла JavaScript –
dependent_js.js. На скриншоте ниже показано, что файл, указанный в правиле как URL ресурса, не отображается в разделе "Скрипты". Поэтому он не входит в прокси API. Если файла нет на уровне организации или среды, развертывание прокси API завершится с ошибкой:Invalid resource url ref jsc://dependent_js.js in policy js-TotalVariable in aprabhashankar-eval
- Чтобы проверить, входит ли файл в определенный пакет прокси API, выполните одно из следующих действий:
Разрешение
Убедитесь, что файлы JavaScript, указанные в элементах <ResourceURL> и <IncludeURL>, относятся к действительному файлу, который существует на уровне прокси API, организации или среды.
Чтобы исправить приведенный выше пример правила JavaScript, добавьте файл dependent_js.js в пакет прокси API. На скриншоте ниже видно, что файлы JavaScript, указанные в элементах <ResourceURL> и <IncludeURL>, отображаются в разделе Scripts пакета прокси API.

WrongResourceType
Сообщение об ошибке
Развертывание прокси-сервера API через интерфейс Edge или API управления Edge завершается неудачно с сообщением об ошибке:
Error Deploying Revision revision_number to environment Resource JavaScript_file is the wrong type. It is invalid_type: but Javascript steps use type jsc:.
Пример сообщения об ошибке
Error Deploying Revision 2 to test
Resource js_checkType.js is the wrong type. It is node: but Javascript steps use type jsc:.
Пример скриншота

Причина
Эта ошибка возникает во время развертывания, если элементы <ResourceURL> и <IncludeURL> правила JavaScript ссылаются на ресурс, тип которого отличается от jsc (файл JavaScript).
Например, если элемент <IncludeURL> объявлен так, как показано ниже, развертывание прокси-сервера API завершится неудачно:
<IncludeURL>node://javascript-dependency.js</IncludeURL>
Это связано с тем, что в нем указан неверный тип ресурса node.
диагностика;
Определите недопустимый тип ресурса, используемый в правилах JavaScript. Эту информацию можно найти в сообщении об ошибке. Например, в следующей ошибке недопустимый тип ресурса –
node.Resource js_checkType.js is the wrong type. It is node: but Javascript steps use type jsc:.Проверьте все правила JavaScript в определенном прокси API, где произошла ошибка. Если в каком-либо правиле JavaScript ресурс, указанный в элементе
<ResourceURL>или<IncludeURL>, соответствует недопустимому типу ресурса, выявленному на шаге 1, то это и является причиной ошибки.Например, в следующем правиле тип ресурса указан как
node, что соответствует сообщению об ошибке:<?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>Поскольку тип ресурса указан как
node(недействительное значение), развертывание прокси API завершается неудачно с ошибкой:Resource js_checkType.js is the wrong type. It is node: but Javascript steps use type jsc:.
Разрешение
Убедитесь, что элементы <ResourceURL> и <IncludeURL> в правилах JavaScript всегда относятся к типу ресурса jsc.
Чтобы исправить пример выше, измените элемент <ResourceURL>, задав для него тип ресурса 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
Сообщение об ошибке
Развертывание прокси-сервера API через интерфейс Edge или API управления Edge завершается неудачно с сообщением об ошибке:
Error Saving Revision revision_number Bundle is invalid. Errors:[Entity : Policy-policy_name, No ResourceURL or Source;].
Пример сообщения об ошибке
Error Saving Revision 10
Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].
Пример скриншота

Причина
Развертывание правил JavaScript может завершиться с ошибкой в следующих случаях:
- Если элемент
<ResourceURL>не объявлен или URL ресурса не определен в этом элементе. Элемент<ResourceURL>является обязательным. - Элемент
<IncludeURL>объявлен, но URL ресурса в нем не определен. Элемент<IncludeURL>является необязательным, но если он объявлен, то URL ресурса должен быть указан в элементе<IncludeURL>.
Например, если элемент <IncludeURL> объявлен так, как показано ниже, развертывание прокси-сервера API завершится неудачно:
<IncludeURL></IncludeURL>
диагностика;
Определите, в каких правилах JavaScript произошла ошибка. Эту информацию можно найти в сообщении об ошибке. Например, в следующем сообщении об ошибке название правила –
Policy-js-example:Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].В XML-файле с нарушением правил JavaScript выполните следующие проверки:
- Элемент
<ResourceURL>должен быть объявлен, и в нем должен быть указан URL ресурса. - Если элемент
<IncludeURL>объявлен, в нем необходимо указать URL ресурса. Объявлять элемент<IncludeURL>необязательно.
Если какая-либо из проверок выше не будет пройдена, это и будет причиной ошибки.
Пример 1. В приведенных ниже правилах не объявлен элемент
<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>Поскольку элемент
<ResourceURL>не объявлен, развертывание прокси API завершается неудачно с ошибкой:Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].Пример 2. В следующем правиле элемент
<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></IncludeURL>
</Javascript>
Поскольку у элемента <IncludeURL> нет URL ресурса, развертывание прокси API завершается неудачно с ошибкой:
Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].
Разрешение
В правилах JavaScript должны быть указаны следующие сведения:
- Элемент
<ResourceURL>объявлен, а URL ресурса определен в этом элементе. Элемент<ResourceURL>является обязательным. Если элемент
<IncludeURL>объявлен, URL ресурса должен быть определен в этом элементе. Элемент<IncludeURL>является необязательным, но если он объявлен, URL ресурса должен быть указан в элементе<IncludeURL>.Чтобы исправить пример 1, приведенный выше, добавьте элемент
<ResourceURL>с допустимым файлом JavaScript:<?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>Чтобы исправить пример 2, приведенный выше, добавьте в элемент
<IncludeURL>действительный файл JavaScript.<?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>