Вы просматриваете документацию Apigee Edge .
Перейдите к документации Apigee X. информация
Инвалидресаурлформат
Сообщение об ошибке
Развертывание прокси-сервера 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>
Инвалидресаурлреференце
Сообщение об ошибке
Развертывание прокси-сервера 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 проверьте, находится ли этот файл в разделе «Сценарии» прокси-сервера API.
- Загрузите пакет прокси-сервера API и найдите, существует ли файл.
- Если файл не является частью определенного пакета прокси-сервера API, проверьте, существует ли он на уровне организации или среды. Для этого расследования вы можете использовать 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>
, видны в разделе «Скрипты» пакета API Proxy.
Неправильный тип ресурса
Сообщение об ошибке
Развертывание прокси-сервера 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, показанный выше, включите действительный файл JavaScript в элемент
<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>