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.3.2. See the documentation for v1.3.2 for the most up-to-date information.

nng_http_req_copy_data(3http)

NAME

nng_http_req_copy_data - copy HTTP request body

SYNOPSIS

#include <nng/nng.h>
#include <nng/supplemental/http/http.h>

int nng_http_req_copy_data(nng_http_req *req, const void *body, size_t size);

DESCRIPTION

The nng_http_req_copy_data() makes a copy of body (of size size) and sets the HTTP body for the request req to it. The copy will be deallocated automatically when req is freed.

The copied body data will be automatically sent with the request when it is sent using nng_http_conn_write_req().

This also updates the relevant Content-Length header of req.

The current framework does not support sending data via chunked transfer-encoding.
To avoid copying data, the nng_http_req_set_data() may be used instead.
It is a good idea to also set the Content-Type header.

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