Tcl
Tcl
HTTPS GET URL with URL Encoded Query Params
See more HTTP Examples
Creates a URL with URL encoded query params, and sends an HTTPS GET to the URL.Chilkat Tcl Downloads
load ./chilkat.dll
set success 0
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
# Create a URL with URL-encoded query params.
set sbUrl [new_CkStringBuilder]
CkStringBuilder_Append $sbUrl "https://www.example.com/something?"
# If we know a query param value does not have any special chars requiring URL encoding,
# just add it. In this case, there is no need to URL encode "123" because "123" url encoded is still just "123".
CkStringBuilder_Append $sbUrl "abc=123&xyz="
set sbValue [new_CkStringBuilder]
CkStringBuilder_Append $sbValue "this is a test"
CkStringBuilder_Append $sbUrl "msg="
CkStringBuilder_Append $sbUrl [CkStringBuilder_getEncoded $sbValue "url" "utf-8"]
# sbUrl contains: https://www.example.com/something?abc=123&xyz=msg=this%20is%20a%20test
puts [CkStringBuilder_getAsString $sbUrl]
# Send the GET request and get the response body, which is assumed to be text of some sort (HTML, XML, JSON, etc.)
# (Chilkat automatically decompresses gzipped responses)
set http [new_CkHttp]
set responseBody [CkHttp_quickGetStr $http [CkStringBuilder_getAsString $sbUrl]]
if {[CkHttp_get_LastMethodSuccess $http] == 0} then {
puts [CkHttp_lastErrorText $http]
delete_CkStringBuilder $sbUrl
delete_CkStringBuilder $sbValue
delete_CkHttp $http
exit
}
puts "Response Body:"
puts "$responseBody"
delete_CkStringBuilder $sbUrl
delete_CkStringBuilder $sbValue
delete_CkHttp $http