diff options
Diffstat (limited to 'docs/man/nng_http_req_set_data.adoc')
| -rw-r--r-- | docs/man/nng_http_req_set_data.adoc | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/docs/man/nng_http_req_set_data.adoc b/docs/man/nng_http_req_set_data.adoc new file mode 100644 index 00000000..005106a0 --- /dev/null +++ b/docs/man/nng_http_req_set_data.adoc @@ -0,0 +1,62 @@ += nng_http_req_set_data(3) +// +// Copyright 2018 Staysail Systems, Inc. <info@staysail.tech> +// Copyright 2018 Capitar IT Group BV <info@capitar.com> +// +// 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_set_data - set HTTP request body + +== SYNOPSIS + +[source, c] +----------- +#include <nng/nng.h> +#include <nng/supplemental/http/http.h> + +int nng_http_req_set_data(nng_http_req *req, const void *body, size_t size); +----------- + +== DESCRIPTION + +The `nng_http_req_set_data()` sets the HTTP body associated with +the request _req_ to _body_, and the size of the body to _size_. +This body data will be automatically sent with the request when it +is sent using <<nng_http_conn_write_req#,nni_http_conn_write_req(3)>>. + +This also updates the relevant `Content-Length` header of _req_. + +NOTE: The current framework does not support sending data via chunked +transfer-encoding. + +The _body_ is *not* copied, and the caller must ensure that it is available +until the _req_ is deallocated. + +TIP: To have a local copy allocated with _req_ that will be automatically +deallocated when _req_ is freed, +see <<nng_http_req_copy_data#,nng_http_req_copy_data(3)>>. + +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 + +<<nng_http_conn_write_req#,nng_http_conn_write_req(3)>>, +<<nng_http_req_alloc#,nng_http_req_alloc(3)>>, +<<nng_http_req_copy_data#,nng_http_req_copy_data(3)>>, +<<nng_http_req_set_header#,nng_http_req_set_header(3)>>, +<<nng#,nng(7)>> |
