Como Substituir parâmetros em uma solicitação de URL
Aplica-se a: System Center 2012 R2 Operations Manager, System Center 2012 - Operations Manager, System Center 2012 SP1 - Operations Manager
Quando você captura um aplicativo web usando o Editor de aplicativo da Web, pode incluir informações exclusivas em uma ou mais solicitações que muda a cada vez que você se conectar ao aplicativo. Essas informações são normalmente incluídas em resposta a uma solicitação e usadas por uma ou mais solicitações subseqüentes.
Por exemplo, um aplicativo pode criar uma ID de sessão exclusiva quando um usuário fizer logon. Essa ID de sessão deve ser incluído em cada solicitação após o processo de logon. Sem a ID de sessão correto, cada uma dessas solicitações falhará. Porque você não sabe qual é esse valor até que a primeira solicitação é executada, ele não pode ser explicitamente incluído na configuração da solicitação. Se você criar o aplicativo web gravando uma sessão do navegador, a ID de sessão é coletada na URL de cada solicitação. No entanto, quando o aplicativo é executado, as solicitações falharem porque a ID de sessão terá um valor diferente da ID da sessão gravada.
Para configurar esse aplicativo, você pode extrair um parâmetro de contexto do corpo da resposta de uma solicitação e usar o valor desse parâmetro em uma ou mais solicitações subseqüentes. Você, em seguida, substituir o valor explícito em solicitações subsequentes com uma variável que representa o parâmetro. Cada vez que a transação sintética é executada, o parâmetro é preenchido na solicitação onde ele está definido. Quando a variável é usada em solicitações subseqüentes, ele é substituído pelo valor coletado antes que a solicitação é enviada ao aplicativo.
Um único aplicativo pode usar qualquer número de parâmetros de contexto. Qualquer número de solicitações pode usar um único parâmetro, mas deve ser executado após a solicitação em que o parâmetro está definido.
Exemplo de ID de sessão
Considere o exemplo em que um aplicativo cria uma ID de sessão quando um usuário fizer logon. Essa ID de sessão é necessário em cada solicitação após a página de logon. Para implementar este cenário, você precisa capturar a ID de sessão quando ele é gerado pela primeira vez e, em seguida, usar esse valor em cada solicitação subseqüente.
Comece usando o processo descrito na Como capturar gravação de aplicativos Web para capturar o logon e ações subsequentes. Sessão registrada para fazer logon no aplicativo e executar algumas ações pode ser semelhante ao exemplo a seguir.
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
Essa sequência de solicitação, a ID de sessão é criada pela primeira solicitação e usada na segunda, terceira e quarta solicitações. Quando você executa esse monitor, ele falhará porque a primeira solicitação gera uma nova ID de sessão que não pode corresponder a identificação da sessão que foi usada quando a sessão foi capturada.
Para configurar esta sequência de solicitação com a substituição de parâmetro, você precisa criar uma regra de extração na primeira solicitação para criar um parâmetro de contexto para ID da sessão. A regra de extração inspeciona o corpo da solicitação para localizar o valor para o sessionid variável. Você deve modificar as solicitações subseqüentes para usar esse parâmetro em vez do valor de ID da sessão.
As solicitações modificadas semelhante ao exemplo a seguir.
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$
Criar uma regra de extração
Parâmetros de contexto são coletados por um regra de extração, e um parâmetro de contexto único de coleta de cada regra de extração. Criar uma regra de extração no propriedades caixa de diálogo da solicitação que inicialmente gera os dados necessários. Para identificar o valor para extrair, você deve exibir o corpo da resposta retornado da solicitação específica. Você pode exibir a fonte da página retornada no navegador ou usar uma ferramenta que permite que você inspecione os detalhes de respostas HTTP. Você não pode exibir o texto usando o Editor de aplicativo da Web.
Quando você tiver identificado a solicitação que contém as informações você precisa extrair, exibir o regras de extração guia nas propriedades da solicitação e criar uma ou mais regras de extração. Os detalhes de cada regra de extração são mostrados na tabela a seguir.
Opção |
Descrição |
---|---|
Nome do parâmetro de contexto |
Digite o nome para fornecer o parâmetro de contexto. |
Começa com |
Insira o texto no corpo de resposta que identifica o início do valor do parâmetro. Você deve especificar caracteres suficientes para garantir que a cadeia de caracteres seja exclusiva. O valor para o parâmetro começa imediatamente após o último caractere de especificado. |
Termina com |
Insira o texto no corpo da resposta que identifica o final do valor do parâmetro. O valor para o parâmetro termina imediatamente antes do primeiro caractere especificado. |
Índice |
Se o texto do começa com caixa ocorre mais de uma vez, esse valor indica o valor a ser usado. Se o texto aparece apenas uma vez, ou a primeira ocorrência de ele mostra o texto para extrair, o valor deve ser 0. Se o segundo valor deve ser extraído, o valor deve ser 1 e assim por diante. |
Ignorar maiúsculas e minúsculas durante a pesquisa de texto correspondente |
Especifica se deve ignorar maiúsculas e minúsculas dos caracteres pesquisadas pelo começa com e termina com caixas. |
Executar a codificação de URI de cadeias de caracteres extraídas |
Especifica se deve codificar a cadeia de caracteres extraída depois de coletadas. |
Inserindo um parâmetro em uma solicitação
Você pode usar um parâmetro em uma solicitação, substituindo o valor explícito com uma variável que representa o parâmetro. O formato da variável é $ParametersContext/<ContextParameterName>$. Quando a solicitação é executada, a variável é substituída com os dados extraídos pelo parâmetro.
Você pode inserir a variável na solicitação usando um dos dois métodos a seguir:
No Propriedades de solicitação caixa de diálogo, clique o geral guia e, em seguida, clique em URL da solicitação para modificar a URL da solicitação para a solicitação.
No Propriedades da solicitação caixa de diálogo, clique o geral guia e, em seguida, clique no Inserir parâmetro botão. Use o Inserir parâmetro caixa de diálogo para a solicitação. Isso é acessado a partir de Inserir parâmetro botão o geral guia o Propriedades de solicitação caixa de diálogo para a solicitação.
Aplicativo Web de exemplo usando o extração de parâmetro
O procedimento a seguir fornece um exemplo do uso de extração de parâmetro em um aplicativo da web. Este exemplo executa uma consulta para a primeira entrada de populares agora seção da home page do Bing. Como esse valor altera regularmente, você precisa primeiro conectar-se à página principal e coletar o termo de pesquisa do corpo da resposta. Você, em seguida, usar esse termo para criar a solicitação para realizar a pesquisa real.
A página principal do Bing é mostrada abaixo com a populares agora seção realçada.
Para determinar onde no corpo da resposta ao termo de pesquisa aparece, você pode exibir a fonte da página. Uma parte de origem é mostrada abaixo com o código HTML do populares agora seção. Esse código HTML, você só precisa a cadeia de caracteres de pesquisa realçado na ilustração a seguir. A solicitação é formada por https://www.bing.com seguido essa cadeia de caracteres.
Você pode extrair apenas o termo em si, mas é mais simples de incluir a cadeia de caracteres inteira no parâmetro. Essa cadeia de caracteres é precedida por caracteres < h3 > Popular agora < / h3 >< ul >< li >< um href = " e termina com a próxima ocorrência do ". Esses são os valores que você usará ao definir a extração de parâmetro.
Para registrar um aplicativo da web de exemplo
-
Use o procedimento Como capturar gravação de aplicativos Web para registrar um aplicativo da web.
-
Durante a gravação, conectar-se a https://www.bing.com.
-
Opcionalmente, use a opção no seu navegador para exibir a origem da home page do Bing e localize o populares agora seção do código HTML.
-
Clique a primeira pesquisa de termos em populares agora.
-
Salve a gravação para o aplicativo web.
-
Remova a última solicitação porque isso não é obrigatório. Para remover a última solicitação, selecione a solicitação e, em seguida, clique em Excluir no ações painel. As solicitações resultantes devem ser semelhantes das seguintes URLs:
Para criar uma regra de extração
-
Selecione a primeira solicitação e, em seguida, clique em propriedades no ações painel.
-
Selecione o regras de extração guia.
-
Clique em Adicionar. O Adicionar regra de extração caixa de diálogo é aberta.
-
No Adicionar regra de extração na caixa de nome de parâmetro de contexto digite SeqüênciaDePesquisa.
-
No começa com digite < h3 > Popular agora < / h3 >< ul >< li >< um href = ".
-
No termina com digite ". A regra de extração deve ser semelhante à ilustração a seguir.
-
Clique em OK para salvar e fechar a regra de extração.
-
Clique em OK para salvar e fechar a solicitação.
Para inserir um parâmetro em uma solicitação
-
Selecione a segunda solicitação e, em seguida, clique em propriedades no ações painel.
-
Sobre o geral clique em Inserir parâmetro.
-
No seqüência box, exclua todo o texto após www.bing.com/.
-
Com o cursor posicionado no final da URL, logo após www.bing.com, selecione SeqüênciaDePesquisa no parâmetros caixa e, em seguida, clique em Inserir. Isso insere a variável $ParametersContext/SearchString$. A solicitação final é semelhante à ilustração a seguir.
-
Clique em OK para fechar a caixa de diálogo.
-
Clique em OK para salvar e fechar a solicitação. A sequência de solicitação modificada deve ser semelhante à ilustração a seguir.
-
Clique em Aplicar para aplicar as alterações e feche o Editor de aplicativo Web.