Przeglądasz dokumentację Apigee Edge.
Przejdź do
Dokumentacja Apigee X. informacje.
InvalidResourceUrlFormat
Komunikat o błędzie
Wdrożenie serwera proxy interfejsu API przy użyciu interfejsu Edge UI lub Edge Management API nie powiedzie się i wyświetli się ten komunikat o błędzie:
Error Deploying Revision revision_number to environment Invalid resource url format. Resource url is invalid_URL.
Przykładowy komunikat o błędzie
Error Deploying Revision 1 to test
Invalid resource url format. Resource url is jsc:add_variables.js.
Przykładowy zrzut ekranu
Przyczyna
Jeśli format adresu URL zasobu określony w elemencie <ResourceURL>
lub <IncludeURL>
zasady JavaScript jest nieprawidłowy, wdrożenie serwera proxy interfejsu API się nie uda.
Prawidłowy format do określenia adresu URL zasobu jest następujący:
<ResourceURL>jsc://<file_name>.js</ResourceURL>
<IncludeURL>jsc://<file_name>.js</IncludeURL>
Jeśli na przykład element <ResourceURL>
jest określony w podany niżej sposób, wdrożenie serwera proxy interfejsu API nie powiedzie się, ponieważ nie jest on zgodny z określonym wzorcem:
<ResourceURL>jsc:add_variables.js</ResourceURL>
Diagnostyka
Identyfikowanie nieprawidłowego formatu adresu URL zasobu używanego w zasadzie JavaScript. Te informacje znajdziesz w komunikacie o błędzie. Na przykład w tym błędzie nieprawidłowy format adresu URL zasobu to
jsc:add_variables.js
.Error Deploying Revision 1 to test Invalid resource url format. Resource url is jsc:add_variables.js.
Sprawdź wszystkie zasady JavaScript na konkretnym serwerze proxy interfejsu API, na którym wystąpił błąd. Jeśli występuje zasada JavaScriptu, w której adres URL zasobu określony w elemencie
<ResourceURL>
lub<IncludeURL>
pasuje do nieprawidłowego wpisu określonego w kroku 1 powyżej, to właśnie jest przyczyną błędu.Na przykład ta zasada określa adres URL zasobu jako
jsc:add_variables.js
, który jest zgodny z treścią komunikatu o błędzie:<?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>
Adres URL zasobu jest podany jako
jsc:add_variables.js
, co jest nieprawidłowe, dlatego wdrożenie serwera proxy interfejsu API kończy się niepowodzeniem i wyświetlany jest błąd:Invalid resource url format. Resource url is jsc:add_variables.js.
Rozdzielczość
Upewnij się, że format adresu URL zasobu określony w elemencie <ResourceURL>
lub <IncludeURL>
zasady JavaScript jest prawidłowy. Na przykład:
<?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
Komunikat o błędzie
Wdrożenie serwera proxy interfejsu API przy użyciu interfejsu Edge UI lub Edge Management API nie powiedzie się i wyświetli się ten komunikat o błędzie:
Error Deploying Revision revision_number to environment Invalid resource url ref invalid_reference in policy policy_name in org_name
Przykładowy komunikat o błędzie
Error Deploying Revision 8 to test
Invalid resource url ref jsc://dependent_js.js in policy js-TotalVariable in aprabhashankar-eval
Przykładowy zrzut ekranu
Przyczyna
Jeśli elementy <ResourceURL>
i <IncludeURL>
odwołują się do pliku JavaScript, który nie istnieje, wdrożenie serwera proxy interfejsu API się nie uda.
Jeśli wdrażasz pakiet serwera proxy na komputerze lokalnym, źródłowe pliki JavaScript muszą być przechowywane w folderze /apiproxy/resources/jsc
. W takim przypadku pliki źródłowe są ograniczone do serwera proxy interfejsu API.
W interfejsie Edge pliki źródłowe JavaScriptu znajdują się w sekcji jsc w sekcji Skrypty w panelu Nawigator edytora serwera proxy interfejsu API. Pliki zasobów możesz też przechowywać w repozytoriach na poziomie organizacji i środowiska (na przykład aby udostępnić kod JavaScript wszystkim serwerom proxy w organizacji lub środowisku).
Ten błąd występuje, jeśli nie można znaleźć żadnych plików zasobów określonych w zasadzie w żadnym z dostępnych zakresów (serwera proxy, środowiska lub organizacji).
Diagnostyka
Wskaż zasadę JavaScript, w której wystąpił błąd i która zawiera nieprawidłowe odwołanie do adresu URL zasobu. Te informacje znajdziesz w komunikacie o błędzie. Na przykład w poniższym błędzie nazwa zasady to
js-TotalVariable
, a nieprawidłowe odniesienie do adresu URL zasobu tojsc://dependent_js.js
.Invalid resource url ref jsc://dependent_js.js in policy js-TotalVariable in aprabhashankar-eval
Sprawdź, czy odwołanie do adresu URL zasobu określone w nieudanych zasadach JavaScriptu jest zgodne z wartością podaną w komunikacie o błędzie (krok 1 powyżej). Na przykład ta zasada określa odwołanie do adresu URL zasobu jako
jsc://dependent_js.js
, które jest zgodne z treścią komunikatu o błędzie:<?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>
Sprawdź, czy plik źródłowy wskazany w pliku w kroku 1 należy do określonego pakietu serwera proxy interfejsu API lub czy istnieje w zakresie organizacji lub środowiska.
- Aby sprawdzić, czy plik należy do określonego pakietu proxy interfejsu API, wykonaj jedną z tych czynności:
- W interfejsie Edge sprawdź, czy ten plik znajduje się w sekcji Skrypty na serwerze proxy interfejsu API.
- Pobierz pakiet interfejsów API serwera proxy i wyszukaj plik, jeśli istnieje.
- Jeśli plik nie należy do określonego pakietu serwera proxy interfejsu API, sprawdź, czy istnieje on na poziomie organizacji lub środowiska. W tym celu możesz użyć interfejsu Resource Files API.
Jeśli pliku nie ma na poziomie serwera proxy interfejsu API, organizacji lub środowiska, jest to przyczyna błędu.
W przykładzie powyżej zwróć uwagę, że nieprawidłowa nazwa pliku JavaScript to
dependent_js.js
. Na poniższym zrzucie ekranu widać, że w sekcji Skrypty nie pojawia się plik określony jako URL zasobu w zasadzie. Dlatego nie jest on częścią proxy interfejsu API. Jeśli plik nie istnieje również na poziomie organizacji lub środowiska, wdrożenie serwera proxy interfejsu API zakończy się niepowodzeniem i wyświetli się błąd:Invalid resource url ref jsc://dependent_js.js in policy js-TotalVariable in aprabhashankar-eval
- Aby sprawdzić, czy plik należy do określonego pakietu proxy interfejsu API, wykonaj jedną z tych czynności:
Rozdzielczość
Upewnij się, że pliki JavaScript określone w elementach <ResourceURL>
i <IncludeURL>
odnoszą się do prawidłowego pliku istniejącego na serwerze proxy API, organizacji lub środowisku.
Aby poprawić przykładową zasadę JavaScriptu pokazaną powyżej, dodaj plik dependent_js.js
do pakietu API proxy. Na poniższym zrzucie ekranu widać, że pliki JavaScript określone w elementach <ResourceURL>
i <IncludeURL>
są widoczne w sekcji Skrypty pakietu proxy interfejsu API.
WrongResourceType
Komunikat o błędzie
Wdrożenie serwera proxy interfejsu API przy użyciu interfejsu Edge UI lub Edge Management API nie powiedzie się i wyświetli się ten komunikat o błędzie:
Error Deploying Revision revision_number to environment Resource JavaScript_file is the wrong type. It is invalid_type: but Javascript steps use type jsc:.
Przykładowy komunikat o błędzie
Error Deploying Revision 2 to test
Resource js_checkType.js is the wrong type. It is node: but Javascript steps use type jsc:.
Przykładowy zrzut ekranu
Przyczyna
Ten błąd występuje podczas wdrażania, jeśli elementy <ResourceURL>
i <IncludeURL>
zasady JavaScript odnoszą się do dowolnego typu zasobu innego niż jsc (plik JavaScript).
Jeśli na przykład element <IncludeURL>
jest zadeklarowany w sposób opisany poniżej, wdrożenie serwera proxy interfejsu API się nie uda:
<IncludeURL>node://javascript-dependency.js</IncludeURL>
Dzieje się tak, ponieważ odnosi się do nieprawidłowego typu zasobu node
.
Diagnostyka
Identyfikowanie nieprawidłowego typu zasobu używanego w zasadzie JavaScript. Te informacje znajdziesz w komunikacie o błędzie. Na przykład w tym błędzie nieprawidłowy typ zasobu to
node
.Resource js_checkType.js is the wrong type. It is node: but Javascript steps use type jsc:.
Sprawdź wszystkie zasady JavaScript na konkretnym serwerze proxy interfejsu API, na którym wystąpił błąd. Jeśli istnieje zasada JavaScriptu, w której zasób określony w elemencie
<ResourceURL>
lub<IncludeURL>
pasuje do nieprawidłowego typu zasobu określonego w kroku 1 powyżej, to właśnie jest przyczyną błędu.Na przykład ta zasada określa typ zasobu jako
node
, który jest zgodny z treścią komunikatu o błędzie:<?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>
Jako typ zasobu podano
node
, co jest nieprawidłowe, dlatego wdrożenie serwera proxy interfejsu API kończy się niepowodzeniem i wyświetlany jest błąd:Resource js_checkType.js is the wrong type. It is node: but Javascript steps use type jsc:.
Rozdzielczość
Upewnij się, że elementy <ResourceURL>
i <IncludeURL>
w zasadzie JavaScriptu zawsze odwołują się do typu zasobu jsc
.
Aby poprawić przykład powyżej, zmodyfikuj element <ResourceURL>
, tak aby używał typu zasobu 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
Komunikat o błędzie
Wdrożenie serwera proxy interfejsu API przy użyciu interfejsu Edge UI lub Edge Management API nie powiedzie się i wyświetli się ten komunikat o błędzie:
Error Saving Revision revision_number Bundle is invalid. Errors:[Entity : Policy-policy_name, No ResourceURL or Source;].
Przykładowy komunikat o błędzie
Error Saving Revision 10
Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].
Przykładowy zrzut ekranu
Przyczyna
Ten błąd może wystąpić w tych przypadkach:
- Jeśli element
<ResourceURL>
nie jest zadeklarowany lub adres URL zasobu nie jest zdefiniowany w tym elemencie. Element<ResourceURL>
jest wymaganym elementem. - Element
<IncludeURL>
został zadeklarowany, ale nie ma w nim zdefiniowanego adresu URL zasobu. Element<IncludeURL>
jest opcjonalny, ale po zadeklarowaniu adresu URL zasobu musisz go podać w elemencie<IncludeURL>
.
Jeśli na przykład element <IncludeURL>
jest zadeklarowany w sposób opisany poniżej, wdrożenie serwera proxy interfejsu API się nie uda:
<IncludeURL></IncludeURL>
Diagnostyka
Wskaż zasadę JavaScriptu, w której wystąpił błąd. Te informacje znajdziesz w komunikacie o błędzie. Na przykład w tym błędzie nazwa zasady to
Policy-js-example
:Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].
W pliku XML zasady JavaScript, którego nie udało się zweryfikować, przeprowadź te testy:
- Element
<ResourceURL>
musi być zadeklarowany, a element musi mieć zdefiniowany adres URL zasobu. - Jeśli element
<IncludeURL>
jest zadeklarowany, musisz w nim podać adres URL zasobu. Deklarowanie elementu<IncludeURL>
jest opcjonalne.
Jeśli któraś z tych kontroli zakończy się niepowodzeniem, to właśnie jest przyczyną błędu.
Przykład 1: ta zasada nie ma zadeklarowanego elementu
<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>
Element
<ResourceURL>
nie został zadeklarowany, dlatego wdrożenie serwera proxy interfejsu API kończy się niepowodzeniem i wyświetla się błąd:Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].
Przykład 2: ta zasada zawiera pusty element
<IncludeURL>
.- Element
<?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>
Element <IncludeURL>
nie ma adresu URL zasobu, dlatego wdrożenie serwera proxy interfejsu API kończy się niepowodzeniem i wyświetla się błąd:
Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].
Rozdzielczość
Upewnij się, że w zasadach JavaScriptu te elementy:
- Zadeklarowano element
<ResourceURL>
, a adres URL zasobu został w nim zdefiniowany. Element<ResourceURL>
jest wymaganym elementem. Jeśli element
<IncludeURL>
jest zadeklarowany, URL zasobu musi być zdefiniowany w tym elemencie.<IncludeURL>
element jest opcjonalny, ale jeśli zadeklarowano, URL zasobu musi być określony w elemencie<IncludeURL>
.Aby poprawić przykład 1 pokazany powyżej, dołącz element
<ResourceURL>
z prawidłowym plikiem 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>
Aby poprawić przykład 2 pokazany powyżej, dodaj prawidłowy plik JavaScript do elementu
<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>