Url Tcl Reference Documentation

Url

Current Version: 10.0.0

Provides an object representation of a URL and easy access to the parts of the URL.

Object Creation

set myUrl [new CkUrl]

Properties

Frag
string
# ckStr is a CkString
CkUrl_get_Frag $myUrl $ckStr
set strVal [CkUrl_get_frag $myUrl]
Introduced in version 9.5.0.49

Contains any text following a fragment marker (#) in the URL, excluding the fragment marker. Given the URI http://www.contoso.com/index.htm#main, the fragment is "main".

top
Host
string
# ckStr is a CkString
CkUrl_get_Host $myUrl $ckStr
set strVal [CkUrl_get_host $myUrl]
Introduced in version 9.5.0.49

The DNS host name or IP address part of the URL. For example, if the URL is "http://www.contoso.com:8080/", the Host is "www.contoso.com". If the URL is "https://192.168.1.124/test.html", the Host is "192.168.1.124".

More Information and Examples
top
HostType
string
# ckStr is a CkString
CkUrl_get_HostType $myUrl $ckStr
set strVal [CkUrl_get_hostType $myUrl]
Introduced in version 9.5.0.49

The type of the host name specified in the URL. Possible values are:

  • "dns": The host name is a domain name system (DNS) style host name.
  • "ipv4": The host name is an Internet Protocol (IP) version 4 host address.
  • "ipv6": The host name is an Internet Protocol (IP) version 6 host address.

top
LastMethodSuccess
boolean 1/0
set boolVal [CkUrl_get_LastMethodSuccess $myUrl]
CkUrl_put_LastMethodSuccess $myUrl $boolVal

Indicate whether the last method call succeeded or failed. A value of 1 indicates success, a value of 0 indicates failure. This property is automatically set for method calls. It is not modified by property accesses. The property is automatically set to indicate success for the following types of method calls:

  • Any method that returns a string.
  • Any method returning a Chilkat object, binary bytes, or a date/time.
  • Any method returning a standard boolean status value where success = 1 and failure = 0.
  • Any method returning an integer where failure is defined by a return value less than zero.

Note: Methods that do not fit the above requirements will always set this property equal to 1. For example, a method that returns no value (such as a "void" in C++) will technically always succeed.

top
Login
string
# ckStr is a CkString
CkUrl_get_Login $myUrl $ckStr
set strVal [CkUrl_get_login $myUrl]
Introduced in version 9.5.0.49

If the URL contains a login and password, this is the login part. For example, if the URL is "http://user:password@www.contoso.com/index.htm ", then the login is "user".

top
Password
string
# ckStr is a CkString
CkUrl_get_Password $myUrl $ckStr
set strVal [CkUrl_get_password $myUrl]
Introduced in version 9.5.0.49

If the URL contains a login and password, this is the password part. For example, if the URL is "http://user:password@www.contoso.com/index.htm ", then the password is "password".

top
Path
string
# ckStr is a CkString
CkUrl_get_Path $myUrl $ckStr
set strVal [CkUrl_get_path $myUrl]
Introduced in version 9.5.0.49

The path (and params) part of the URL, excluding the query and fragment. If the URL is: "http://www.amazon.com/gp/product/1476752842/ref=s9_psimh_gw_p14_d0_i3?pf_rd_m=ATVPDKIKX0DER&pf_rd_s=desktop-1", then the path is "/gp/product/1476752842/ref=s9_psimh_gw_p14_d0_i3".

More Information and Examples
top
PathWithQueryParams
string
# ckStr is a CkString
CkUrl_get_PathWithQueryParams $myUrl $ckStr
set strVal [CkUrl_get_pathWithQueryParams $myUrl]
Introduced in version 9.5.0.58

The path (and params) part of the URL, including the query params, but excluding the fragment. If the URL is: "http://www.amazon.com/gp/product/1476752842/ref=s9_psimh_gw_p14_d0_i3?pf_rd_m=ATVPDKIKX0DER&pf_rd_s=desktop-1", then then this property returns "/gp/product/1476752842/ref=s9_psimh_gw_p14_d0_i3?pf_rd_m=ATVPDKIKX0DER&pf_rd_s=desktop-1".

top
Port
integer
set intVal [CkUrl_get_Port $myUrl]
Introduced in version 9.5.0.49

The port number of the URL.

For example, if the URL is "http://www.contoso.com:8080/", the port number is 8080.
If the URL is "https://192.168.1.124/test.html", the port number is the default 80.
If the URL is "https://www.amazon.com/", the port number is the default SSL/TLS port 443.

top
Query
string
# ckStr is a CkString
CkUrl_get_Query $myUrl $ckStr
set strVal [CkUrl_get_query $myUrl]
Introduced in version 9.5.0.49

The query part of the URL, excluding the fragment. If the URL is: "http://www.amazon.com/gp/product/1476752842/ref=s9_psimh_gw_p14_d0_i3?pf_rd_m=ATVPDKIKX0DER&pf_rd_s=desktop-1#frag", then the query is "pf_rd_m=ATVPDKIKX0DER&pf_rd_s=desktop-1".

top
Ssl
boolean 1/0
set boolVal [CkUrl_get_Ssl $myUrl]
Introduced in version 9.5.0.49

1 if the URL indicates SSL/TLS, otherwise false. A URL beginning with "https://" indicates SSL/TLS.

top
Utf8
boolean 1/0
set boolVal [CkUrl_get_Utf8 $myUrl]
CkUrl_put_Utf8 $myUrl $boolVal

When set to 1, all "const char *" arguments are interpreted as utf-8 strings. If set to 0 (the default), then "const char *" arguments are interpreted as ANSI strings. Also, when set to 1, and Chilkat method returning a "const char *" is returning the utf-8 representation. If set to 0, all "const char *" return values are ANSI strings.

top

Methods

ParseUrl
# url is a string
set status [CkUrl_ParseUrl $url]
Introduced in version 9.5.0.49

Parses a full URL. After parsing, the various parts of the URL are available iin the properties.

Returns 1 for success, 0 for failure.

More Information and Examples
top