Tcl
Tcl
URL-Encode a MIME Body
See more MIME Examples
Demonstrates the Chilkat Mime.UrlEncodeBody method, which replaces the current body with an application/x-www-form-urlencoded-style representation using the named charset. The only argument is the charset; it is a void method.
Background: This transforms the body into the form-encoding used by HTML form submissions — spaces to
+, reserved characters to percent-escapes — interpreting the text through the given charset first so non-ASCII characters encode correctly. It is a niche operation for constructing form-style payloads within a MIME part.Chilkat Tcl Downloads
load ./chilkat.dll
set success 0
# Demonstrates the Mime.UrlEncodeBody method, which replaces the current body with an
# application/x-www-form-urlencoded representation using the named charset. The only argument is
# the charset. It is a void method.
set mime [new_CkMime]
set success [CkMime_SetBodyFromPlainText $mime "name=John Doe & city=New York"]
if {$success == 0} then {
puts [CkMime_lastErrorText $mime]
delete_CkMime $mime
exit
}
# URL-encode the body: spaces become "+", reserved characters become %-escapes.
CkMime_UrlEncodeBody $mime "utf-8"
set encodedBody [CkMime_getBodyDecoded $mime]
if {[CkMime_get_LastMethodSuccess $mime] == 0} then {
puts [CkMime_lastErrorText $mime]
delete_CkMime $mime
exit
}
puts "$encodedBody"
delete_CkMime $mime