Name
gun:request - Perform the given request
Description
request(ConnPid, Method, Path, Headers, Body)
-> request(ConnPid, Method, Path, Headers, Body, #{})
request(ConnPid, Method, Path, Headers, Body, ReqOpts)
-> StreamRef
ConnPid :: pid()
Method :: binary()
Path :: iodata()
Headers :: gun:req_headers()
Body :: iodata()
ReqOpts :: gun:req_opts()
StreamRef :: gun:stream_ref()
Perform the given request.
This is a general purpose function that should only be used when other method-specific functions do not apply.
The function request/5,6
sends the entire request, including the request body, immediately. It is therefore not possible to use gun:data(3) after that. You should provide a content-type header. Gun will set the content-length header automatically.
Arguments
- ConnPid
The pid of the Gun connection process.
- Method
Method to be used for the request.
- Path
Path to the resource.
- Headers
Additional request headers.
- Body
Request body.
- ReqOpts
Request options.
Return value
A reference that identifies the newly created stream is returned. It is this reference that must be passed in subsequent calls and will be received in messages related to this new stream.
Changelog
- 2.0: Implicit body detection has been removed. The body must now be provided either directly (even if empty) or using gun:headers(3).
- 1.0: Function introduced.
Examples
Perform a request
StreamRef = gun:request(ConnPid, <<"PUT">>,
"/lang/fr_FR/hello",
[{<<"content-type">>, <<"text/plain">>}],
<<"Bonjour !">>).
See also
gun(3), gun:headers(3), gun:await(3), gun:await_body(3), gun_push(3), gun_inform(3), gun_response(3), gun_data(3)
Gun
2.0
Function Reference
Navigation
Version select
Like my work? Donate!
Donate to Loïc Hoguin because his work on Cowboy, Ranch, Gun and Erlang.mk is fantastic:
Recurring payment options are also available via GitHub Sponsors. These funds are used to cover the recurring expenses like food, dedicated servers or domain names.