Url Unicode C Reference Documentation

Url

Current Version: 10.0.0

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

Create/Dispose

HCkUrlW instance = CkUrlW_Create();
// ...
CkUrlW_Dispose(instance);
HCkUrlW CkUrlW_Create(void);

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

void CkUrlW_Dispose(HCkUrlW handle);

Objects created by calling CkUrlW_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 CkUrlW_Dispose.

Properties

Frag
void CkUrlW_getFrag(HCkUrlW cHandle, HCkString retval);
const wchar_t *CkUrlW_frag(HCkUrlW 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".

top
Host
void CkUrlW_getHost(HCkUrlW cHandle, HCkString retval);
const wchar_t *CkUrlW_host(HCkUrlW 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".

More Information and Examples
top
HostType
void CkUrlW_getHostType(HCkUrlW cHandle, HCkString retval);
const wchar_t *CkUrlW_hostType(HCkUrlW 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.

top
LastMethodSuccess
BOOL CkUrlW_getLastMethodSuccess(HCkUrlW cHandle);
void CkUrlW_putLastMethodSuccess(HCkUrlW cHandle, BOOL newVal);

Indicate whether the last method call succeeded or failed. A value of TRUE indicates success, a value of FALSE 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 = TRUE and failure = FALSE.
  • 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 TRUE. For example, a method that returns no value (such as a "void" in C++) will technically always succeed.

top
Login
void CkUrlW_getLogin(HCkUrlW cHandle, HCkString retval);
const wchar_t *CkUrlW_login(HCkUrlW 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".

top
Password
void CkUrlW_getPassword(HCkUrlW cHandle, HCkString retval);
const wchar_t *CkUrlW_password(HCkUrlW 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".

top
Path
void CkUrlW_getPath(HCkUrlW cHandle, HCkString retval);
const wchar_t *CkUrlW_path(HCkUrlW 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".

More Information and Examples
top
PathWithQueryParams
void CkUrlW_getPathWithQueryParams(HCkUrlW cHandle, HCkString retval);
const wchar_t *CkUrlW_pathWithQueryParams(HCkUrlW 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".

top
Port
int CkUrlW_getPort(HCkUrlW 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.

top
Query
void CkUrlW_getQuery(HCkUrlW cHandle, HCkString retval);
const wchar_t *CkUrlW_query(HCkUrlW 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".

top
Ssl
BOOL CkUrlW_getSsl(HCkUrlW 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.

top

Methods

ParseUrl
BOOL CkUrlW_ParseUrl(HCkUrlW cHandle, const wchar_t *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.

More Information and Examples
top