= nng_http_req_copy_data(3) // // Copyright 2018 Staysail Systems, Inc. // Copyright 2018 Capitar IT Group BV // // This document is supplied under the terms of the MIT License, a // copy of which should be located in the distribution where this // file was obtained (LICENSE.txt). A copy of the license may also be // found online at https://opensource.org/licenses/MIT. // == NAME nng_http_req_copy_data - copy HTTP request body == SYNOPSIS [source, c] ----------- #include #include 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 <>. This also updates the relevant `Content-Length` header of _req_. NOTE: The current framework does not support sending data via chunked transfer-encoding. TIP: To avoid copying data, the <> may be used instead. TIP: 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 <>, <>, <>, <>, <>