AutoIt
AutoIt
Keeping Query Params in a Hashtable
Demonstrates how to use a Chilkat Hashtable to hold query params and re-emit as a query param string.Note: The ToQueryString method was added in Chilkat v9.5.0.92.
Chilkat AutoIt Downloads
Local $bSuccess = False
$oHt = ObjCreate("Chilkat.Hashtable")
; Add name/value pairs from an existing query param string where the values are already URL encoded.
Local $sQp = "txt=this%20is%20a%20test&color=blue&fruits=apples%26oranges"
$bSuccess = $oHt.AddQueryParams($sQp)
; Add some additional name/value pairs.
$oHt.AddStr("name","Jack Sparrow")
$oHt.AddStr("movie","Pirates of the Carribean")
; Iterate over the hash table to show what we have..
$oKeys = ObjCreate("Chilkat.StringTable")
$oHt.GetKeys($oKeys)
Local $iNumKeys = $oKeys.Count
Local $sKey
Local $sVal
Local $i = 0
While $i < $iNumKeys
$sKey = $oKeys.StringAt($i)
$sVal = $oHt.LookupStr($sKey)
ConsoleWrite($sKey & " = " & $sVal & @CRLF)
$i = $i + 1
Wend
; Output for the above loop:
; color = blue
; name = Jack Sparrow
; fruits = apples&oranges
; txt = this is a test
; movie = Pirates of the Carribean
; Get all name/value pairs as a query parm string with values URL encoded
$sQp = $oHt.ToQueryString()
ConsoleWrite($sQp & @CRLF)
; Result:
; color=blue&name=Jack%20Sparrow&fruits=apples%26oranges&txt=this%20is%20a%20test&movie=Pirates%20of%20the%20Carribean