NNG_HTTP_REQ_ADD_HEADER(3http)

NAME
nng_http_req_add_header - add HTTP request header

SYNOPSIS

    #include <nng/nng.h>
    #include <nng/supplemental/http/http.h>
    int nng_http_req_add_header(nng_http_req *req, const char *key,
        const char *val);

DESCRIPTION

The nng_http_req_add_header() adds an HTTP header for the request req and the key to the val. The key and val are copied.

If a header with the value of key already exists, then a comma and whitespace separate are appended to it, followed by val.

If no such header already exists, then one is created with the value val.

    Tip

    The HTTP specification requires that duplicate headers be treated identically to a single header with multiple comma-delimited values.

    Tip

    See nng_http_req_set_header() if replacement of an existing header rather than appending to it is desired.

The value of key is case insensitive, and should not include the final colon in an HTTP header. For example, specifying Host or hOSt are equivalent, whereas the value Host: is not a legal header key.

RETURN VALUES

This function returns 0 on success, and non-zero otherwise.

ERRORS

NNG_ENOMEM
    Insufficient memory to perform the operation.

NNG_ENOTSUP
    No support for HTTP in the library.

SEE ALSO

nng_http_req_alloc(3http), nng_http_req_del_header(3http), nng_http_req_get_header(3http), nng_http_req_set_header(3http), nng(7)