Url C Reference Documentation

Url

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

Create/Dispose

HCkUrl CkUrl_Create(void);

Creates an instance of the HCkUrl object and returns a handle (i.e. a "void *" pointer). The handle is passed in the 1st argument for the functions listed on this page.

void CkUrl_Dispose(HCkUrl handle);

Objects created by calling CkUrl_Create must be freed by calling this method. A memory leak occurs if a handle is not disposed by calling this function. Also, any handle returned by a Chilkat "C" function must also be freed by the application by calling the appropriate Dispose method, such as CkUrl_Dispose.

Properties

void CkUrl_getFrag(HCkUrl cHandle, HCkString retval);

const char *CkUrl_frag(HCkUrl cHandle);

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

void CkUrl_getHost(HCkUrl cHandle, HCkString retval);

const char *CkUrl_host(HCkUrl cHandle);

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

void CkUrl_getHostType(HCkUrl cHandle, HCkString retval);

const char *CkUrl_hostType(HCkUrl cHandle);

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.

void CkUrl_getLogin(HCkUrl cHandle, HCkString retval);

const char *CkUrl_login(HCkUrl cHandle);

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

void CkUrl_getPassword(HCkUrl cHandle, HCkString retval);

const char *CkUrl_password(HCkUrl cHandle);

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

void CkUrl_getPath(HCkUrl cHandle, HCkString retval);

const char *CkUrl_path(HCkUrl cHandle);

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

void CkUrl_getPathWithQueryParams(HCkUrl cHandle, HCkString retval);

const char *CkUrl_pathWithQueryParams(HCkUrl cHandle);

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

int CkUrl_getPort(HCkUrl cHandle);

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.

void CkUrl_getQuery(HCkUrl cHandle, HCkString retval);

const char *CkUrl_query(HCkUrl cHandle);

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

BOOL CkUrl_getSsl(HCkUrl cHandle);

Introduced in version 9.5.0.49

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

BOOL CkUrl_getUtf8(HCkUrl cHandle);

void CkUrl_putUtf8(HCkUrl cHandle, BOOL newVal);

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

Methods

BOOL CkUrl_ParseUrl(HCkUrl cHandle, const char *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 TRUE for success, FALSE for failure.

Parse a URL into its Component Parts