DataPrime: URL decodificação / codificação

Este guia fornece um glossário das funções IBM® Cloud Logs DataPrime URL para codificação e decodificação de URLs.

urlDecode e urlEncode suportam a notação de função e método.

urlEncode

Use o site urlEncode para converter caracteres em um formato que possa ser transmitido pela Internet.

Para enviar um URL pela Internet, o URL deve ser definido usando o conjunto de caracteres ASCII. Por exemplo, talvez você precise codificar um conjunto de caracteres e substituir um espaço vazio por %20.

Função

urlEncode(string: string): string

Por exemplo, você pode usar o exemplo a seguir para codificar o valor de query_string_parameters.name usando uma função:

replace query_string_parameters.name with urlEncode(query_string_parameters.name)

Método

string: string.urlEncode(): string

Por exemplo, você pode usar o exemplo a seguir para codificar o valor de query_string_parameters.name usando um método:

replace query_string_parameters.name with query_string_parameters.name.urlEncode()

urlDecode

Use urlDecode para converter um URL em um formato que seja fácil de usar.

Função

urlDecode(string: string): string

Por exemplo, você pode usar o exemplo a seguir para decodificar o valor de query_string_parameters.name usando uma função:

replace query_string_parameters.name with urlDecode(query_string_parameters.name)

Método

string: string.urlDecode(): string

Por exemplo, você pode usar o exemplo a seguir para decodificar o valor de query_string_parameters.name usando um método:

replace query_string_parameters.name with query_string_parameters.name.urlDecode()

Exemplo: Conversão dos parâmetros do cabeçalho URL em um objeto JSON e decodificação URL

Considere a seguinte linha de registro:

{
  "domain": "https://www.ibm.com",
  "path": "/home",
  "query_string": "name=My%20Name&b=c%20d&c=d"
}

Primeiro, extraia cada parâmetro de string de consulta em seu próprio campo de objeto.

extract query_string into query_string_parameters using kv(pair_delimiter='&',key_delimiter='=')

O documento resultante tem a seguinte aparência:

{
  "domain":"https://www.ibm.com",
  "query_string":"name=My%20Name&b=c%20d&c=d",
  "path": "/home",
  "query_string_parameters":{
    "name":"My%20Name",
    "b":"c%20d",
    "c":"d"
  }
}

Em seguida, decodifique o endereço query_string_parameters.name e substitua %20 por um espaço vazio. Use replace para substituir o campo antigo por um novo e substituir o valor de um keypath existente por um novo.

replace query_string_parameters.name with urlDecode(query_string_parameters.name)
replace query_string_parameters.b with urlDecode(query_string_parameters.b)

O resultado é o seguinte documento:

{
  "domain":"https://www.ibm.com",
  "query_string":"name=My%20Name&b=c%20d&c=d",
  "path": "/home",
  "query_string_parameters":{
    "name":"My name",
    "b":"c d",
    "c":"d"
  }
}