Wyświetlasz dokumentację Apigee Edge.
Zapoznaj się z dokumentacją Apigee X. Informacje
SharedFlowNotFound
Kod błędu
flow.SharedFlowNotFound
Treść odpowiedzi na błąd
{ "fault": { "faultstring": "Shared Flow shared_flow_name Not Found", "detail": { "errorcode": "flow.SharedFlowNotFound" } } }
Możliwe przyczyny
Możliwe przyczyny tego błędu:
Przyczyna | Opis |
Przepływ współdzielony jest niedostępny | Przepływ współdzielony nie istnieje. |
Przepływ współdzielony nie został wdrożony | Przepływ współdzielony istnieje, ale nie został wdrożony. |
Przyczyna: przepływ współdzielony jest niedostępny
Jeśli w zasadach dotyczących komunikatu o przepływie danych w środowisku nie istnieje wspólny przepływ danych zdefiniowany w elemencie <SharedFlowBundle>
, pojawia się ten błąd.
Jeśli na przykład element <SharedFlowBundle>
w zasadzie objaśnienia przepływu zawiera wspólny przepływ o nazwie SharedFlow_Sample
i jeśli ten wspólny przepływ nie istnieje w środowisku, błąd występuje.
Przykładowy komunikat o błędzie
{
"fault": {
"faultstring": "Shared Flow SharedFlow_Sample Not Found",
"detail": {
"errorcode": "flow.SharedFlowNotFound"
}
}
}
Diagnostyka
Odszukaj przepływ współdzielony, którego nie ma. Znajdziesz go w elemencie
faultstring
odpowiedzi na błąd. Na przykład w tym plikufaultstring
nazwa udostępnionego przepływu toSharedFlow_Sample
:"faultstring": "Shared Flow SharedFlow_Sample Not Found"
Sprawdź wszystkie zasady objaśnienia przepływu na konkretnym serwerze proxy interfejsu API, na którym wystąpił błąd. Sprawdź, czy istnieje jakakolwiek zasada powiadomienia o ścieżce, w której element
<SharedFlowBundle>
jest określony za pomocą nazwy ścieżki określonej w kroku 1 powyżej.Na przykład w tej polityce wartość
<SharedFlowBundle>
jest określona jakoSharedFlow_Sample
, co odpowiada wartości w ciągu błędów.<FlowCallout async="false" continueOnError="false" enabled="true" name="Auth-Flow-Callout"> <DisplayName>Auth Flow Callout</DisplayName> <SharedFlowBundle>SharedFlow_Sample</SharedFlowBundle> </FlowCallout>
W interfejsie Edge sprawdź, czy ten udostępniony proces istnieje w sekcji Interfejsy API > Procesy udostępnione. Jeśli go nie ma, to jest przyczyną błędu. Pamiętaj, że w nowym interfejsie Edge znajdziesz przepływy współdzielone na karcie Programowanie.
Na przykład na zrzucie ekranu poniżej udostępniony proces
SharedFlow_Sample
nie istnieje.Ponieważ ten udostępniony proces nie istnieje, otrzymujesz kod błędu:
flow.SharedFlowNotFound
Rozdzielczość
Upewnij się, że wspólny proces określony w elemencie <SharedFlowBundle>
w zasadach dotyczących oznaczenia procesu, istnieje i jest wdrożony w określonym środowisku, w którym jest wykonywane żądanie interfejsu API.
Aby rozwiązać ten problem, możesz wybrać jedną z tych opcji:
Utwórz przepływ współdzielony o nazwie
SharedFlow_Sample
, jak pokazano poniżej, i wdróż go w środowisku testowym, jak pokazano poniżej:Użyj już istniejącego przepływu współdzielonego, który został wdrożony w środowisku testowym w ramach zasad dotyczących ostrzeżenia o przepływie. Możesz na przykład użyć w zasadach dotyczących wyróżnienia SharedFlow_demo.
<FlowCallout async="false" continueOnError="false" enabled="true" name="Auth-Flow-Callout"> <DisplayName>Auth Flow Callout</DisplayName> <SharedFlowBundle>SharedFlow_demo</SharedFlowBundle> </FlowCallout>
Jeśli wykonasz wywołanie interfejsu API w środowisku testowym, błąd zniknie, ponieważ ostrzeżenie o błędach jest również wdrażane w środowisku testowym.
Przyczyna: nie wdrożony przepływ współdzielony
Ten błąd występuje, gdy nie wdrożony jest wspólny proces określony w elemencie <SharedFlowBundle>
w zasadach dotyczących powiadomienia o procesie.
Jeśli na przykład element <SharedFlowBundle>
w zasadzie Flow Callout zawiera udostępniony przepływ o nazwie SharedFlow_example
, który nie jest wdrożony w konkretnym środowisku, w którym wysyłane jest żądanie do interfejsu API, błąd występuje.
Przykładowy komunikat o błędzie
{
"fault": {
"faultstring": "Shared Flow Shared-Flow_example Not Found",
"detail": {
"errorcode": "flow.SharedFlowNotFound"
}
}
}
Diagnostyka
Określ wspólny przepływ, który nie został wdrożony. Znajdziesz go w elemencie
faultstring
odpowiedzi na błąd. Na przykład w tym plikufaultstring
nazwa udostępnionego przepływu toShared-Flow_example
:"faultstring": "Shared Flow Shared-Flow_example Not Found"
W interfejsie Edge sprawdź, czy ten wspólny przepływ danych jest wdrożony.
Na przykład na poniższym zrzucie ekranu widać, że udostępniony proces
SharedFlow_example
istnieje, alenie został wdrożony.
Ponieważ ten wspólny proces nie został wdrożony, otrzymasz kod błędu:
flow.SharedFlowNotFound
Rozdzielczość
Upewnij się, że wspólny przepływ określony w elemencie <SharedFlowBundle>
w zasadzie Flow Callout jest dostępny i wdrożony w konkretnym środowisku, w którym wykonywane jest żądanie do interfejsu API.
Aby poprawić powyższy przykład, wdróż w środowisku testowym wspólny przepływ o nazwie SharedFlow_example
, jak pokazano poniżej:
Jeśli wykonasz wywołanie interfejsu API w środowisku testowym, błąd zniknie, ponieważ ostrzeżenie o błędach jest również wdrażane w środowisku testowym.