DataPrime: URL 디코딩/인코딩

이 가이드에서는 URL 인코딩 및 디코딩을 위한 IBM® Cloud Logs DataPrime URL 함수에 대한 용어집을 제공합니다.

urlDecode 및 urlEncode 함수와 메서드 표기법을 지원합니다.

urlEncode

urlEncode 을 사용하여 문자를 인터넷을 통해 전송할 수 있는 형식으로 변환합니다.

인터넷을 통해 URL 을 보내려면 URL 을 ASCII 문자 집합을 사용하여 설정해야 합니다. 예를 들어 문자 집합을 인코딩하고 빈 공백을 %20 으로 바꿔야 할 수 있습니다.

기능

urlEncode(string: string): string

예를 들어 다음 샘플을 사용하여 함수를 사용하여 query_string_parameters.name 값을 인코딩할 수 있습니다:

replace query_string_parameters.name with urlEncode(query_string_parameters.name)

메소드

string: string.urlEncode(): string

예를 들어 다음 샘플을 사용하여 메서드를 사용하여 query_string_parameters.name 값을 인코딩할 수 있습니다:

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

urlDecode

urlDecode 을 사용하여 URL 을 사용자 친화적인 형식으로 변환합니다.

기능

urlDecode(string: string): string

예를 들어 다음 샘플을 사용하여 함수를 사용하여 query_string_parameters.name 값을 디코딩할 수 있습니다:

replace query_string_parameters.name with urlDecode(query_string_parameters.name)

메소드

string: string.urlDecode(): string

예를 들어 다음 샘플을 사용하여 메서드를 사용하여 query_string_parameters.name 값을 디코딩할 수 있습니다:

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

예시: URL 헤더 매개변수를 JSON 객체로 변환하고 URL 디코딩하기

다음 로그 행을 고려하세요:

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

먼저 각 쿼리 문자열 매개변수를 고유한 개체 필드로 추출합니다.

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

결과 문서는 다음과 같습니다:

{
  "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"
  }
}

그런 다음 query_string_parameters.name 을 해독하고 %20 을 빈 공간으로 바꿉니다. replace 을 사용하여 기존 필드를 새 필드로 덮어쓰고 기존 키 경로의 값을 새 키 경로로 덮어씁니다.

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

그 결과 다음 문서가 생성됩니다:

{
  "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"
  }
}