Rozwiązywanie problemów z wyodrębnianiem zmiennych w środowisku wykonawczym

Wyświetlasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
info

SourceMessageNotAvailable

Kod błędu

steps.extractvariables.SourceMessageNotAvailable

Treść odpowiedzi na błąd

{
  "fault": {
      "faultstring": "[variable_name] message is not available for ExtractVariable: [policy_name]",
      "detail": {
          "errorcode": "steps.extractvariables.SourceMessageNotAvailable"
      }
  }
}

Przyczyna

Ten błąd występuje, gdy zmienna message określona w elemencie <Source> zasady Extract Variables:

  • poza zakresem (niedostępne w określonym procesie, w którym są wykonywane zasady) lub
  • nie można rozstrzygnąć (nie jest zdefiniowana)

Ten błąd występuje np. wtedy, gdy zasada Extract Variables jest wykonywana w przepływie żądania, ale element <Source> jest ustawiony na zmienną response lub error, która nie występuje w przepływie żądania.

Diagnostyka

  1. Określ zasadę Extract Variables, w której wystąpił błąd, oraz nazwę zmiennej, która jest niedostępna. Oba te elementy znajdziesz w elemencie faultstring odpowiedzi na błąd. Na przykład w tym ciągu błędów nazwa zasady to ExtractVariables-1, a zmienna to response:

    "faultstring": "response message is not available for ExtractVariable: ExtractVariables-1"

  2. W pliku XML nieudanej zasady Extract Variables sprawdź, czy nazwa zmiennej ustawiona w elemencie jest zgodna z nazwą zmiennej zidentyfikowaną w ciągu znaków błędu (krok 1 powyżej). Na przykład poniższa zasada Extract Variables określa zmienną o nazwie response w elemencie, który pasuje do ciągu błędu:

    <ExtractVariables name="ExtractVariables-1">
        <Source>response</Source>
        <URIPath>
            <Pattern ignoreCase="true">/a/{pathSeg}</Pattern>
        </URIPath>
        <VariablePrefix>urirequest</VariablePrefix>
    </ExtractVariables>
    
  3. Sprawdź, czy zmienna użyta w elemencie <Source> jest zdefiniowana i dostępna w przepływie, w którym wykonywana jest zasada Extract Variables.

  4. Jeśli zmienna ma wartość:

    • poza zakresem (niedostępne w określonym procesie, w którym są wykonywane zasady) lub
    • nie można rozstrzygnąć (nie jest zdefiniowana)

    wtedy to jest przyczyną błędu.

    Załóżmy na przykład, że zasada Wyodrębnij zmienne pokazana powyżej jest wykonywana w przepływie request. Pamiętaj, że zmienna response jest używana w elemencie <Source> zasady Wyodrębnij zmienne. Zmienna response jest dostępna tylko w przepływie odpowiedzi.

    Ponieważ zmienna response nie występuje w procesie żądania, otrzymujesz kod błędu: steps.extractvariables.SourceMessageNotAvailable.

Rozdzielczość

Sprawdź, czy zmienna ustawiona w elemencie <Source> nieudanej zasady Extract Variables jest zdefiniowana i istnieje w przepływie, w którym jest wykonywana.

Aby poprawić powyższy przykład zasady Extract Variables, możesz zmodyfikować element <Source>, tak aby używał zmiennej request w sposób, w jaki występuje ona w przepływie żądania:

<ExtractVariables name="ExtractVariables-1">
    <Source>request</Source>
    <URIPath>
        <Pattern ignoreCase="true">/a/{pathSeg}</Pattern>
    </URIPath>
    <VariablePrefix>urirequest</VariablePrefix>
</ExtractVariables>

SetVariableFailed

Kod błędu

steps.extractvariables.SetVariableFailed

Treść odpowiedzi na błąd

{
    "fault": {
        "faultstring": "Failed to set variable [variable_name] value [variable_value] from ExtractVariables: [policy_name]",
        "detail": {
            "errorcode": "steps.extractvariables.SetVariableFailed"
        }
    }
}

Przyczyna

Ten błąd występuje, jeśli zasada Extract Variables nie może ustawić wartości zmiennej. Zwykle dzieje się tak, gdy próbujesz przypisać wartości do wielu zmiennych, których nazwy zaczynają się od tych samych słów w zagnieżdżonym formacie rozdzielonym kropkami.

Załóżmy na przykład, że tworzysz zmienną var.color lub przypisujesz jej wartość. W tym przypadku color jest przydzielony jako węzeł obiektu. Jeśli następnie spróbujesz przypisać wartość do innej zmiennej var.color.next, operacja się nie powiedzie, ponieważ zmienna color jest już przypisana i nie można do niej przypisać innej zmiennej.

Diagnostyka

  1. Określ zasadę Extract Variables, w której wystąpił błąd, oraz nazwę zmiennej, dla której nie można było ustawić wartości. Oba te elementy znajdziesz w elemencie faultstring odpowiedzi na błąd. Na przykład w tym ciągu błędów nazwa zasad to ExtractColors, a zmienna to var.color.next:

    "faultstring": "Failed to set variable var.color.next value red from ExtractVariables: ExtractColors"

  2. W pliku XML nieudanej zasady Extract Variables sprawdź, czy nazwa zmiennej jest zgodna z nazwą zmiennej zidentyfikowaną w ciągu znaków błędu (krok 1 powyżej). Na przykład ta zasada próbuje przypisać wartość z parametru zapytania żądania do zmiennej o nazwie var.color.next (wartość, która pojawia się w ciągu błędu):

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <ExtractVariables name="ExtractColors">
        <DisplayName>ExtractColors</DisplayName>
        <Source>request</Source>
        <QueryParam name="color">
            <Pattern ignoreCase="true">{color}</Pattern>
        </QueryParam>
        <QueryParam name="nextcolor">
            <Pattern ignoreCase="true">{color.next}</Pattern>
        </QueryParam>
        <VariablePrefix>var</VariablePrefix>
    </ExtractVariables>
    
  3. Sprawdź wszystkie nazwy zmiennych użyte w zasadach Wyodrębnij zmienne, które nie powiodły się. Jeśli przypiszesz wartość do innej zmiennej, której nazwa zaczyna się od tej samej nazwy co nazwa zmiennej zidentyfikowana w ciągu błędu (krok 1 powyżej), to jest to przyczyną błędu.

    W przykładzie zasad Wyodrębnianie zmiennych powyżej zwróć uwagę na te elementy:

    • Wartość parametru zapytania o nazwie color jest najpierw przypisywana do zmiennej var.color (Uwaga: var to prefiks wszystkich zmiennych ustawiony w elemencie <VariablePrefix>).
    • W następnym przypisaniu wartość parametru zapytania nextcolor jest przypisywana do innej zmiennej var.color.next.
    • Ponieważ zmienna var.color jest już przypisana, zasada Extract Variables nie może przypisać kolejnej zagnieżdżonej zmiennej var.color.next. Pojawi się kod błędu: steps.extractvariables.SetVariableFailed

Rozdzielczość

  1. Upewnij się, że nie masz wielu nazw zmiennych, które zaczynają się od tych samych słów i są zagnieżdżone w formacie rozdzielonym kropkami.

    Aby poprawić zasadę Extract Variables pokazaną powyżej, możesz zmodyfikować nazwę zmiennej var.color.next, aby używać nazwy zmiennej var.nextcolor..

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <ExtractVariables name="ExtractColors">
        <DisplayName>ExtractColors</DisplayName>
        <Source>request</Source>
        <QueryParam name="color">
            <Pattern ignoreCase="true">{color}</Pattern>
        </QueryParam>
        <QueryParam name="nextcolor">
            <Pattern ignoreCase="true">{nextcolor}</Pattern>
        </QueryParam>
        <VariablePrefix>var</VariablePrefix>
    </ExtractVariables>
    
    

Więcej informacji

Więcej informacji znajdziesz w tym poście na forum społeczności.

InvalidJSONPath

Kod błędu

steps.extractvariables.InvalidJSONPath

Treść odpowiedzi na błąd

{
    "fault": {
        "faultstring": "Invalid JSON path [path_name] in policy [policy_name].",
        "detail": {
            "errorcode": "steps.extractvariables.InvalidJSONPath"
        }
    }
}

Przyczyna

Ten błąd występuje, jeśli w elemencie <JSONPath> zasady Extract Variables użyto nieprawidłowej ścieżki JSON. Jeśli na przykład ładunek JSON nie zawiera obiektu Name, ale w zasadach Extract Variables (Wyodrębnianie zmiennych) określisz ścieżkę Name, wystąpi ten błąd.

Diagnostyka

  1. Określ zasadę Extract Variables, w której wystąpił błąd, oraz nieprawidłową ścieżkę JSON. Oba te elementy znajdziesz w elemencie faultstring odpowiedzi o błędzie. Na przykład w tym ciągu błędu nazwa zasady to ExtractJSONVariables, a nieprawidłowa ścieżka JSON to $.Name:

    "faultstring": "Invalid JSON path $.Name in policy ExtractJSONVariables."

  2. W pliku XML nieudanej zasady Extract Variables sprawdź, czy ścieżka JSON ustawiona w elemencie <JSONPath> jest zgodna ze ścieżką zidentyfikowaną w ciągu znaków błędu (krok 1 powyżej). Na przykład ta zasada Extract Variables określa ścieżkę JSON $.Name, która pasuje do ciągu błędu:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <ExtractVariables name="ExtractJSONVariables">
        <Source>response</Source>
        <JSONPayload>
            <Variable name="name" type="string">
                <JSONPath>$.Name</JSONPath>
            </Variable>
        </JSONPayload>
       <VariablePrefix>employee</VariablePrefix>
    </ExtractVariables>
    
  3. Sprawdź element <Source> i określ, z którego ładunku JSON chcesz wyodrębnić zmienną. Jeśli na przykład element <Source> ma wartość request, zasady wyodrębniają ładunek JSON z obiektu żądania. Jeśli ma wartość response, będzie to obiekt odpowiedzi.

    W przykładzie zasady Extract Variables pokazanym powyżej element <Source> ma wartość response, więc zmienne są wyodrębniane z ładunku JSON odpowiedzi.

    <Source>response</Source>

  4. Sprawdź odpowiedni ładunek JSON (określony w kroku 3) i upewnij się, że zawiera obiekt określony w elemencie <JSONPath>. Jeśli ładunek JSON nie zawiera tego obiektu, to jest to przyczyną błędu.

    Załóżmy na przykład, że chcesz wyodrębnić zmienne z tego ładunku odpowiedzi JSON:

    {
      "firstName":"John",
      "lastName":"Doe",
      "city":"San Jose",
      "state":"CA"
    }
    

    Ponieważ ładunek odpowiedzi JSON nie zawiera obiektu Name, zasada Extract Variables kończy się niepowodzeniem i wyświetla kod błędu: steps.extractvariables.InvalidJSONPath.

Rozdzielczość

  1. Sprawdź, czy w elemencie <JSONPath> zasady Extract Variables (Wyodrębnij zmienne) określono tylko obiekty, które są częścią ładunku JSON, z którego wyodrębniane są zmienne.

    Aby poprawić przykładowe zasady Extract Variables pokazane powyżej, możesz zmodyfikować element <JSONPath>, aby określić jeden z obiektów dostępnych w przykładowej odpowiedzi JSON Payload (np. obiekty firstName i lastName są prawidłowe):

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <ExtractVariables name="ExtractJSONVariables">
        <Source>response</Source>
        <JSONPayload>
            <Variable name="name" type="string">
                <JSONPath>$.firstName</JSONPath>
            </Variable>
        </JSONPayload>
       <VariablePrefix>employee</VariablePrefix>
    </ExtractVariables>
    
    

ExecutionFailed

Kod błędu

steps.extractvariables.ExecutionFailed

Treść odpowiedzi na błąd

{
    "fault": {
        "faultstring": "Failed to execute the ExtractVariables: [policy_name]",
        "detail": {
            "errorcode": "steps.extractvariables.ExecutionFailed"
        }
    }
}

Możliwe przyczyny

Możliwe przyczyny tego błędu:

Przyczyna Opis
Brak ładunku wejściowego Ładunek wejściowy (JSON, XML) jest pusty.
Nieprawidłowe lub niepoprawne dane wejściowe Dane wejściowe (JSON, XML itp.) przekazane do zasad są nieprawidłowe lub błędnie sformatowane.

Przyczyna: brak ładunku danych wejściowych

Ten błąd występuje, gdy zasada Extract Variables ma wyodrębniać zmienne z ładunku JSON lub XML, ale zawartość (ładunek) zmiennej określonej w elemencie <Source> jest pusta.

Jeśli na przykład element <Source> w zasadach Extract Variables ma wartość request lub response i powinien zawierać ładunek JSON lub XML, ale ładunek jest pusty, wystąpi błąd.

Diagnostyka

  1. Znajdź zasadę Extract Variables, w której wystąpił błąd. Te informacje znajdziesz w elemencie faultstring odpowiedzi o błędzie. Na przykład w tym ciągu błędu nazwa zasady to ExtractJSONVariables:

    "faultstring": "Failed to execute the ExtractVariables: ExtractXMLVariables"

  2. Sprawdź element <Source> w nieudanym pliku XML zmiennych do wyodrębnienia i określ typ danych wejściowych, z których wyodrębniane są zmienne. Na przykład w tej zasadzie Extract Variables element <Source> ma wartość response, a zmienne są wyodrębniane z ładunku XML:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <ExtractVariables name="ExtractXMLVariables" async="false" continueOnError="false" enabled="true">
        <XMLPayload>
            <Namespaces/>
            <Variable name="City" type="string">
                <XPath>/city</XPath>
            </Variable>
        </XMLPayload>
        <Source clearPayload="false">response</Source>
    </ExtractVariables>
    
    
  3. Sprawdź, czy dane wejściowe analizowane przez zasadę Wyodrębnianie zmiennych są puste. Jeśli dane wejściowe są puste, to jest to przyczyną błędu.

    W przykładzie zasady Extract Variables pokazanym powyżej ładunek odpowiedzi (czyli treść odpowiedzi) wysłany przez serwer backendu był pusty.

    Ponieważ ładunek odpowiedzi XML jest pusty, otrzymasz kod błędu:

    steps.extractvariables.ExecutionFailed

    Ten błąd może również wystąpić, jeśli element <Source> jest ustawiony na request, ale w żądaniu do serwera proxy interfejsu API nie jest przekazywany żaden ładunek. Na przykład:

    curl -v "http://<org>-<env>.apigee.net/v1/testevexecutionfailed" -H "Content-Type: application/xml"
    

    Zasada Extract Variables wykonuje wyodrębnianie XML tylko wtedy, gdy nagłówek Content-Type wiadomości ma wartość application/xml, text/xml lub application/*+xml. Jeśli chcesz, aby zasady Extract Variables analizowały ładunek żądania XML, musisz przekazać nagłówek Content-Type jako application/xml, text/xml lub application/*+xml.

Rozdzielczość

Sprawdź, czy dane wejściowe przekazywane do zasady Extract Variables są prawidłowe i nie są puste.

Aby rozwiązać problem z przykładową zasadą Extract Variables pokazaną powyżej, przekaż prawidłowy ładunek XML. Na przykład:

  1. Utwórz plik o nazwie city.xml z taką treścią:

    <city>Bengaluru</city>
    <area>Sanjaynagar</area>
    
  2. Wywołaj interfejs API za pomocą polecenia cURL w ten sposób:

    curl -v "http://<org>-<env>.apigee.net/v1/testevexecutionfailed" -H "Content-Type: application/xml" -X POST -d @city.xml
    
    

Przyczyna: nieprawidłowe lub źle sformatowane dane wejściowe

Ten błąd występuje, gdy zasada Extract Variables (Wyodrębnij zmienne) analizuje nieprawidłowe lub błędnie sformatowane dane wejściowe.

Jeśli na przykład poniższy nieprawidłowy plik JSON zostanie podany jako dane wejściowe do zasady Extract Variables, pojawi się ten błąd.

[
    "args": ["name" : "amar" ]
]

Diagnostyka

  1. Znajdź zasadę Extract Variables, w której wystąpił błąd. Te informacje znajdziesz w elemencie faultstring odpowiedzi na błąd. Na przykład w tym faultstring nazwa zasady to ExtractJSONVariables:

    "faultstring": "Failed to execute the ExtractVariables: ExtractJSONVariables"

  2. Sprawdź element <Source> w nieudanym pliku XML zmiennych do wyodrębnienia i określ typ danych wejściowych, z których wyodrębniane są zmienne. Na przykład w tych zasadach Extract Variables element <Source> ma wartość request i wyodrębnia zmienne z ładunku JSON:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <ExtractVariables name="ExtractJSONVariables" async="false" continueOnError="false" enabled="true">
        <JSONPayload>
            <Variable name="Name" type="string">
                <JSONPath>$.args.name</JSONPath>
            </Variable>
        </JSONPayload>
        <Source clearPayload="false">request</Source>
    </ExtractVariables>
    
    
  3. Sprawdź, czy dane wejściowe analizowane przez zasadę Wyodrębnij zmienne są prawidłowe. Jeśli dane wejściowe są nieprawidłowe lub błędnie sformatowane, to jest to przyczyną błędu.

    W pokazanej powyżej przykładowej zasadzie Extract Variables do zasady Extract Variables przekazano ten nieprawidłowy kod JSON:

    [
        "args": ["name" : "amar" ]
    ]
    

    Oto przykładowe wywołanie interfejsu API, które pokazuje, jak przekazano żądanie:

    curl -v "http://<org>-<env>.apigee.net/v1/testevexecutionfailed" -H "Content-Type: application/json" -X POST -d '[ "args" : ["name" : "amar" ]]'
    

    Ładunek JSON przekazany do interfejsu API jest nieprawidłowy, ponieważ zawiera tablicę z nawiasami kwadratowymi ([ ]), więc otrzymujesz kod błędu:

    steps.extractvariables.ExecutionFailed
    

    Ten błąd może też wystąpić, jeśli element <Source> został ustawiony na response, ale ładunek odpowiedzi JSON jest nieprawidłowy lub błędnie sformatowany.

Rozdzielczość

Sprawdź, czy dane wejściowe przekazywane do zasady Extract Variables są prawidłowe i nie są błędnie sformatowane.

Aby rozwiązać problem z zasadami Extract Variables (Wyodrębnianie zmiennych) omówiony powyżej, przekaż prawidłowe żądanie ładunku JSON w ten sposób:

{
   "args":{
      "name":"amar"
   }
}

UnableToCast

Kod błędu

steps.extractvariables.UnableToCast

Treść odpowiedzi na błąd

{
    "fault": {
        "faultstring": "Unable to cast value [value] as [type].",
        "detail": {
            "errorcode": "steps.extractvariables.UnableToCast"
        }
    }
}

Przyczyna

Ten błąd występuje, jeśli zasada Extract Variables nie może przekształcić wyodrębnionej wartości w zmienną. Zwykle dzieje się tak, gdy próbujesz przypisać wartość jednego typu danych do zmiennej innego typu danych.

Na przykład jeśli zasada Wyodrębnij zmienną próbuje ustawić wartość wyodrębnioną ze zmiennej typu String w zmiennej typu Integer, pojawi się ten błąd.

Diagnostyka

  1. Określ typ danych zmiennej, do której zasady Wyodrębnianie zmiennych próbują rzutować i ponoszą porażkę. Te informacje znajdziesz w elemencie faultstringodpowiedzi na błąd. Na przykład w tym elemencie faultstring typ obiektu to BOOLEAN:

    "faultstring":"Unable to cast value 36.231 as BOOLEAN."

  2. Znajdź zasadę Extract Variables, w której chcesz ustawić wartość zmiennej typu określonego w kroku 1.

    Na przykład ta zasada Extract Variables wyodrębnia wartość ze ścieżki JSONPath $.latitude do zmiennej typu boolean, która pasuje do ciągu błędu:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <ExtractVariables name="EV-XML-Name" async="false" continueOnError="false" enabled="true">
        <JSONPayload>
          <Variable name="latitude" type="boolean">
              <JSONPath>$.latitude</JSONPath>
          </Variable>
        </JSONPayload>
        <Source clearPayload="false">response</Source>
    </ExtractVariables>
    
    
  3. Sprawdź typ danych wyodrębnianej wartości. Dane mogą mieć postać nagłówków, ścieżek URI, ładunków JSON/XML, parametrów formularza i parametrów zapytania.

  4. Sprawdź, czy typ danych określony w kroku 3 i typ danych zmiennej, do której przypisywane są dane (określony w kroku 2), są takie same.

  5. Jeśli typ danych zmiennych źródłowych i docelowych nie jest taki sam, to jest to przyczyną błędu.

    W przykładzie zasad Extract Variables powyżej załóżmy, że ładunek żądania JSON jest taki:

    {
     "latitude":36.2312
    }
    

    Typ danych wartości wyodrębnianej z <JSONPath>, ‘$.latitude’ to liczba całkowita, która jest przypisywana do zmiennej typu logicznego.

    Ponieważ typ danych wyodrębnionej wartości i typ danych zmiennej, do której przypisywana jest wartość, nie są takie same, otrzymujesz kod błędu: steps.extractvariables.UnableToCast.

Rozdzielczość

Upewnij się, że typ danych wyodrębnionej wartości i zmiennej, do której przypisywana jest treść, są takie same.

Aby poprawić przykładową zasadę Extract Variables, musisz zmienić typ zmiennej na Integer:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ExtractVariables name="EV-XML-Name" async="false" continueOnError="false" enabled="true">
    <JSONPayload>
        <Variable name="latitude" type="integer">
            <JSONPath>$.latitude</JSONPath>
        </Variable>
    </JSONPayload>
    <Source clearPayload="false">response</Source>
</ExtractVariables>

JsonPathParsingFailure

Kod błędu

steps.extractvariables.JsonPathParsingFailure

Treść odpowiedzi na błąd

{
    "fault": {
        "faultstring": "ExtractVariables [policy_name]: Json path parsing failed for flow variables [variable_name]",
        "detail": {
            "errorcode": "steps.extractvariables.JsonPathParsingFailure"
        }
    }
}

Przyczyna

Ten błąd występuje, gdy zasada Extract Variables nie może przeanalizować ścieżki JSON i wyodrębnić danych ze zmiennej przepływu określonej w elemencie <Source>. Zwykle dzieje się tak, gdy zmienna przepływu określona w elemencie <Source> nie istnieje w bieżącym przepływie.

Ten błąd występuje na przykład wtedy, gdy zasada Extract Variables jest wykonywana w przepływie odpowiedzi i ma analizować ścieżkę JSON, ale element <Source> określa zmienną przepływu request.content, która nie istnieje w przepływie odpowiedzi.

Diagnostyka

  1. Określ zasadę Extract Variables, w której wystąpił błąd, oraz nazwę zmiennej przepływu, do której nie można było wyodrębnić danych. Oba te elementy znajdziesz w elemencie faultstring odpowiedzi o błędzie. Na przykład w tym ciągu błędów nazwa zasady to ExtractVariables-1, a zmienna to request.content:

    "faultstring": "ExtractVariables ExtractJSONVariabes: Json path parsing failed for flow variables request.content"

  2. W pliku XML nieudanej zasady Extract Variables sprawdź, czy nazwa zmiennej ustawiona w elemencie <Source> jest zgodna z nazwą zmiennej zidentyfikowaną w ciągu znaków błędu (krok 1 powyżej). Na przykład ta zasada Extract Variables określa zmienną o nazwie request.content, która pasuje do treści faultstring:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <ExtractVariables name="ExtractJSONVariables" async="false" continueOnError="false" enabled="true">
        <JSONPayload>
            <Variable name="Name" type="string">
                <JSONPath>$.args.name</JSONPath>
            </Variable>
        </JSONPayload>
        <Source clearPayload="false">request.content</Source>
    </ExtractVariables>
    
    
  3. Sprawdź, czy zmienna przepływu użyta w elemencie <Source> jest zdefiniowana i dostępna w przepływie, w którym wykonywana jest zasada Extract Variables.

  4. Jeśli zmienna ma wartość:

    • poza zakresem (niedostępne w określonym procesie, w którym są wykonywane zasady) lub
    • nie można rozstrzygnąć (nie jest zdefiniowana)

    wtedy to jest przyczyną błędu.

    Załóżmy na przykład, że zasada ExtractVariables pokazana powyżej ma być wykonywana w przepływie odpowiedzi. Pamiętaj, że zmienna przepływu request.content jest używana w elemencie <Source> zasady Wyodrębnij zmienne. Zmienna przepływu request.content jest dostępna tylko w przepływie żądania.

    Ponieważ zmienna response nie występuje w procesie żądania, otrzymujesz kod błędu: steps.extractvariables.JsonPathParsingFailure.

Rozdzielczość

Sprawdź, czy zmienna przepływu używana w elemencie <Source> zasady Extract Variables jest dostępna w przepływie, w którym ta zasada jest wykonywana.

Załóżmy na przykład, że w przepływie odpowiedzi istnieje zmienna o nazwie response.content, która zawiera JSON, który chcesz wyodrębnić. Aby poprawić zasady Extract Variables pokazane powyżej, możesz zmodyfikować element <Source> w ten sposób:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ExtractVariables name="ExtractJSONVariables" async="false" continueOnError="false" enabled="true">
    <JSONPayload>
        <Variable name="Name" type="string">
            <JSONPath>$.args.name</JSONPath>
        </Variable>
    </JSONPayload>
    <Source clearPayload="false">response.content</Source>
</ExtractVariables>