Så här byter du ut parametrarna i en URL-begäran

Viktigt

Den här versionen av Operations Manager har nått slutet av supporten, vi rekommenderar att du uppgraderar till Operations Manager 2022.

När du avbildar en webbapp med hjälp av webbprogramredigeraren kan den innehålla unik information i en eller flera begäranden som ändras varje gång du ansluter till programmet. Den här informationen ingår vanligtvis i svaret på en begäran och används sedan av en eller flera efterföljande begäranden.

Ett program kan till exempel skapa ett unikt sessions-ID när en användare loggar in. Det här sessions-ID:t måste inkluderas i varje begäran efter inloggningsprocessen. Utan rätt sessions-ID misslyckas var och en av dessa begäranden. Eftersom du inte vet vad det här värdet är förrän den första begäran har körts kan den inte uttryckligen tas med i konfigurationen av begäran. Om du skapar webbappen genom att spela in en webbläsarsession samlas sessions-ID:t in i URL:en för varje begäran. Men när programmet körs misslyckas begäranden eftersom sessions-ID:t har ett annat värde än det inspelade sessions-ID:t.

Om du vill konfigurera ett sådant program kan du extrahera en kontextparameter från brödtexten i svaret på en begäran och använda värdet för den parametern i en eller flera efterföljande begäranden. Sedan ersätter du det explicita värdet i efterföljande begäranden med en variabel som representerar parametern . Varje gång den syntetiska transaktionen körs fylls parametern i i begäran där den definieras. När variabeln används i efterföljande begäranden ersätts den med det insamlade värdet innan begäran skickas till programmet.

Ett enda program kan använda valfritt antal kontextparametrar. Valfritt antal begäranden kan använda en enda parameter men måste köras efter begäran där parametern har definierats.

Exempel på sessions-ID

Tänk dig exemplet där ett program skapar ett sessions-ID när en användare loggar in. Det här sessions-ID:t krävs i varje begäran efter inloggningssidan. För att implementera det här scenariot måste du avbilda sessions-ID:t när det först genereras och sedan använda det värdet i varje efterföljande begäran.

Du börjar med att använda processen som beskrivs i How to Capture Web Application Recording to capture the logon and subsequent actions (Avbilda webbprograminspelning) för att avbilda inloggningen och efterföljande åtgärder. Den inspelade sessionen för att logga in på programmet och utföra vissa åtgärder kan se ut ungefär som i följande exempel.


http://www.myapp.com/home.aspx

http://www.myapp.com/search.aspx?query=testing&sessionid=32793279321721

http://www.myapp.com/results.aspx?sessionid=32793279321721

http://www.myapp.com/submit.aspx?sessionid=32793279321721

I den här begärandesekvensen skapas sessions-ID:t av den första begäran och används i den andra, tredje och fjärde begäranden. När du kör den här övervakaren misslyckas den eftersom den första begäran genererar ett nytt sessions-ID som inte kunde matcha det sessions-ID som användes när sessionen registrerades.

För att konfigurera den här begärandesekvensen med parameterersättning måste du skapa en extraheringsregel för den första begäran för att skapa en kontextparameter för sessions-ID:t. Extraheringsregeln kontrollerar brödtexten i begäran för att hitta värdet för variabeln sessionid. Sedan ändrar du efterföljande begäranden så att den här parametern används i stället för värdet för sessions-ID:t.

De ändrade begärandena ser ut ungefär som i följande exempel.


http://www.myapp.com/home.aspx

http://www.myapp.com/search.aspx?query=testing&sessionid=$ParametersContext/sessionID$

http://www.myapp.com/results.aspx?sessionid=$ParametersContext/sessionID$

http://www.myapp.com/submit.aspx?sessionid=$ParametersContext/sessionID$

Skapa en extraheringsregel

Kontextparametrar samlas in av en extraheringsregel och varje extraheringsregel samlar in en enda kontextparameter. Du skapar en extraheringsregel i dialogrutan Egenskaper för begäran som ursprungligen genererar nödvändiga data. Om du vill identifiera värdet som ska extraheras måste du visa brödtexten i svaret som returneras från den specifika begäran. Du kan antingen visa källan för sidan som returneras i webbläsaren eller använda ett verktyg som gör att du kan granska informationen om HTTP-svar. Du kan inte visa texten med hjälp av webbprogramredigeraren.

När du har identifierat begäran som innehåller den information som du måste extrahera kan du visa fliken Extraheringsregler i egenskaperna för begäran och skapa en eller flera extraheringsregler. Information om varje extraheringsregel visas i följande tabell.

Alternativ Beskrivning
Namn på kontextparameter Ange namnet för att ge kontextparametern.
Börjar med Ange texten i brödtexten i svaret som identifierar början av parametervärdet. Du bör ange tillräckligt med tecken för att säkerställa att strängen är unik. Värdet för parametern startar omedelbart efter det senast angivna tecknet.
Slutar med Ange texten i brödtexten i svaret som identifierar slutet av parametervärdet. Värdet för parametern slutar omedelbart före det första angivna tecknet.
Index Om texten i rutan Börjar med inträffar mer än en gång anger det här värdet vilket värde som ska användas. Om texten bara visas en gång, eller om den första förekomsten av den visar texten som ska extraheras, ska värdet vara 0. Om det andra värdet ska extraheras ska värdet vara 1 och så vidare.
Ignorera skiftläge under sökning efter matchande text Anger om skiftläget för de tecken som ska genomsökas av rutorna Börjar med och Slutar med ska ignoreras.
Utföra URI-kodning av extraherade strängar Anger om den extraherade strängen ska kodas efter att den har samlats in.

Infoga en parameter i en begäran

Du använder en parameter i en begäran genom att ersätta det explicita värdet med en variabel som representerar parametern . Variabelns format är $ParametersContext/<ContextParameterName>$. När begäran körs ersätts variabeln med de data som extraheras av parametern .

Du kan infoga variabeln i begäran med någon av följande två metoder:

  • I dialogrutan Egenskaper för begäran klickar du på fliken Allmänt och sedan på Begärande-URL för att ändra begärande-URL:en för begäran.
  • I dialogrutan Egenskaper för begäran klickar du på fliken Allmänt och sedan på knappen Infoga parameter . Använd dialogrutan Infoga parameter för begäran. Detta nås från knappen Infoga parameter på fliken Allmänt i dialogrutan Egenskaper för begäran för begäran.

Exempelwebbprogram med parameterextrahering

Följande procedur innehåller ett exempel på hur du använder parameterextrahering i ett webbprogram. I det här exemplet körs en fråga för den första posten i avsnittet Populärt nu på Bing startsida. Eftersom det här värdet ändras regelbundet måste du först ansluta till huvudsidan och samla in söktermen från brödtexten i svaret. Du använder sedan den här termen för att skapa begäran för att utföra den faktiska sökningen.

Huvudsidan Bing visas nedan med avsnittet Populärt nu markerat.

Bing Homepage

Om du vill ta reda på var i svarstexten söktermen visas kan du visa sidans källa. En del av källan visas nedan med HTML-koden i avsnittet Populärt nu . I den här HTML-koden behöver du bara söksträngen som är markerad i följande bild. Begäran skapas från http://www.bing.com följt av den här strängen.

Bing Popular Now Search String

Du kan bara hämta själva termen, men det är enklare att ta med hela strängen i parametern. Den här strängen föregås av tecknen <h3Popular> now</h3ullia><><>< href=> och slutar med nästa förekomst av ". Det här är de värden som du kommer att använda när du definierar parameterextraheringen.

Så här registrerar du ett exempelwebbprogram

  1. Använd proceduren i How to Capture Web Application Recording (Avbilda webbprograminspelning ) för att spela in ett webbprogram.
  2. Anslut till http://www.bing.comnär du spelar in.
  3. Du kan också använda alternativet i webbläsaren för att visa källan till Bing startsida och leta upp avsnittet Populärt nu i HTML-koden.
  4. Klicka på den första söktermen under Populär nu.
  5. Spara inspelningen i webbappen.
  6. Ta bort den senaste begäran eftersom detta inte krävs. Om du vill ta bort den senaste begäran väljer du begäran och klickar sedan på Ta bort i fönstret Åtgärder . De resulterande begärandena bör se ut ungefär som följande URL:er:

Bing Web Application Recorded

Skapa en extraheringsregel

  1. Välj den första begäran och klicka sedan på Egenskaper i fönstret Åtgärder .

  2. Välj fliken Extraheringsregler .

  3. Klicka på Lägg till. Dialogrutan Lägg till extraheringsregel öppnas.

  4. I dialogrutan Lägg till extraheringsregel skriver du SearchString i rutan Kontextparameternamn.

  5. I rutan Börjar med skriver du <h3Popular> now</h3ullia><><>< href=>.

  6. I rutan Slutar med skriver du ". Extraheringsregeln bör likna följande bild.

    Extraction Rule

  7. Klicka på OK för att spara och stänga extraheringsregeln.

  8. Klicka på OK för att spara och stänga begäran.

Infoga en parameter i en begäran

  1. Välj den andra begäran och klicka sedan på Egenskaper i fönstret Åtgärder .

  2. På fliken Allmänt klickar du på Infoga parameter.

  3. Ta bort all text efter www.bing.com/ i rutan Sträng.

  4. När markören är placerad i slutet av URL:en, precis efter www.bing.com, väljer du SearchString i rutan Parametrar och klickar sedan på Infoga. Då infogas variabeln $ParametersContext/SearchString$. Den slutliga begäran liknar följande bild.

    Insert Parameter

  5. Stäng dialogrutan genom att klicka på OK.

  6. Klicka på OK för att spara och stänga begäran. Den ändrade begärandesekvensen bör se ut ungefär som följande bild.

    Bing Web Application Modified

  7. Klicka på Använd för att tillämpa ändringarna och stäng sedan webbprogramredigeraren.