This documentation is for the TIP (development tree) of NNG and may represent unreleased changes or functionality that is experimental, and is subject to change before release. The latest released version is v1.8.0. See the documentation for v1.8.0 for the most up-to-date information.

nng_url(5)

NAME

nng_url - Universal Resource Locator object

SYNOPSIS

#include <nng/nng.h>

typedef struct nng_url {
    char *u_rawurl;
    char *u_scheme;
    char *u_userinfo;
    char *u_host;
    char *u_hostname;
    char *u_port;
    char *u_path;
    char *u_query;
    char *u_fragment;
    char *u_requri;
} nng_url;

DESCRIPTION

An nng_url is a structure used for representing URLs. These structures are created by parsing string formatted URLs with nng_url_parse().

Applications may access individual fields, but must not free or alter them, as the underlying memory is managed by the library.

The fields are as follows:

u_rawurl

The unparsed URL string. This will never be NULL.

u_scheme

The URL scheme, such as "http" or "inproc". Always lower case. This will never be NULL.

u_userinfo

This username and password if supplied in the URL string. Will be NULL when not present.

u_host

The full host part of the URL, including the port if present (separated by a colon.)

u_hostname

The name of the host, and may be the empty string in some cases.

u_port

The port. May be empty if irrelevant or not specified.

u_path

The path, typically used with HTTP or WebSockets. Will be empty string if not specified.

u_query

The query info (typically following ? in the URL.) Will be NULL if not present.

u_fragment

This is used for specifying an anchor, the part after # in a URL. Will be NULL if not present.

u_requri

The full Request-URI (path[?query][#fragment]). Will be the empty string if not specified.

Other fields may also be present, but only those documented here are safe for application use.
More information about Universal Resource Locators can be found in RFC 3986.

SEE ALSO