gun:data(3)

Name

gun:data - Stream the body of a request

Description

data(ConnPid, StreamRef, IsFin, Data) -> ok

ConnPid   :: pid()
StreamRef :: reference()
IsFin     :: fin | nofin
Data      :: iodata()

Stream the body of a request.

This function can only be used if the original request had headers indicating that a body would be streamed.

All calls to this function must use the nofin flag except for the last which must use fin to indicate the end of the request body.

Empty data is allowed regardless of the value of IsFin. Gun may or may not send empty data chunks, however.

Arguments

ConnPid

The pid of the Gun connection process.

StreamRef

Identifier of the stream for the original request.

IsFin

Whether this message terminates the request.

Data

All or part of the response body.

Return value

The atom ok is returned.

Changelog

  • 1.0: Function introduced.

Examples

Stream the body of a request
StreamRef = gun:put(ConnPid, "/lang/fr_FR/hello", [
    {<<"content-type">>, <<"text/plain">>}
]).
gun:data(ConnPid, StreamRef, nofin, <<"Bonjour !\n">>).
gun:data(ConnPid, StreamRef, fin, <<"Bonsoir !\n">>).

See also

gun(3), gun:patch(3), gun:post(3), gun:put(3), gun:request(3)

Gun 1.2 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.