Url Tcl Reference Documentation

Url

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".

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".

Parse a URL into its Component Parts

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.

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".

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".

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".

Parse a URL into its Component Parts

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".

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.

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".

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.

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.

Methods

# 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.

Parse a URL into its Component Parts