Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

http::message

A container for a complete HTTP message.

Synopsis

Defined in header <boost/beast/http/message.hpp>

template<
    bool isRequest,
    class Body,
    class Fields = fields>
class message :
    public http::header< isRequest, fields >
Types

Name

Description

allocator_type

The type of allocator used.

body_type

The type providing the body traits.

const_iterator

A constant iterator to the field sequence.

fields_type

The type representing the fields.

header_type

The base class used to hold the header portion of the message.

is_request

Indicates if the header is a request or response.

iterator

A constant iterator to the field sequence.

key_compare

A strictly less predicate for comparing keys, using a case-insensitive comparison.

writer

The algorithm used to serialize the header.

Member Functions

Name

Description

at

Returns the value for a field, or throws an exception.

base

Returns the header portion of the message.

begin

Return a const iterator to the beginning of the field sequence.

body

Returns the body.

cbegin

Return a const iterator to the beginning of the field sequence.

cend

Return a const iterator to the end of the field sequence.

chunked

Returns true if the chunked Transfer-Encoding is specified.

Set or clear the chunked Transfer-Encoding.

clear

Remove all fields from the container.

content_length

Set or clear the Content-Length field.

count

Return the number of fields with the specified name.

end

Return a const iterator to the end of the field sequence.

equal_range

Returns a range of iterators to the fields with the specified name.

Returns a range of iterators to the fields with the specified name.

erase

Remove a field.

Remove all fields with the specified name.

find

Returns an iterator to the case-insensitive matching field.

Returns an iterator to the case-insensitive matching field name.

get_allocator

Return a copy of the allocator associated with the container.

has_content_length

Returns true if the Content-Length field is present.

insert

Insert a field.

keep_alive

Returns true if the message semantics indicate keep-alive.

Set the keep-alive message semantic option.

key_comp

Returns a copy of the key comparison function.

message [constructor]

Constructor.

Construct a message.

method

Return the request-method verb.

Set the request-method.

method_string

Return the request-method as a string.

Set the request-method.

need_eof

Returns true if the message semantics require an end of file.

operator=

Assignment.

operator[]

Returns the value for a field, or "" if it does not exist.

Returns the value for a case-insensitive matching header, or "" if it does not exist.

payload_size

Returns the payload size of the body in octets if possible.

prepare_payload

Prepare the message payload fields for the body.

reason

Return the response reason-phrase.

Set the response reason-phrase (deprecated)

result

The response status-code result.

Set the response status-code.

Set the response status-code as an integer.

result_int

The response status-code expressed as an integer.

set

Set a field value, removing any other instances of that field.

swap

Return a buffer sequence representing the trailers.

target

Returns the request-target string.

Set the request-target string.

version

Return the HTTP-version.

Set the HTTP-version.

Protected Member Functions

Name

Description

get_chunked_impl

Returns the chunked Transfer-Encoding setting.

get_keep_alive_impl

Returns the keep-alive setting.

get_method_impl

Returns the request-method string.

get_reason_impl

Returns the response reason-phrase string.

get_target_impl

Returns the request-target string.

has_content_length_impl

Returns true if the Content-Length field is present.

set_chunked_impl

Adjusts the chunked Transfer-Encoding value.

set_content_length_impl

Sets or clears the Content-Length field.

set_keep_alive_impl

Adjusts the Connection field.

set_method_impl

Set or clear the method string.

set_reason_impl

Set or clear the reason string.

set_target_impl

Set or clear the target string.

Description

This container is derived from the Fields template type. To understand all of the members of this class it is necessary to view the declaration for the Fields type. When using the default fields container, those declarations are in fields.

A message can be a request or response, depending on the isRequest template argument value. Requests and responses have different types; functions may be overloaded based on the type if desired.

The Body template argument type determines the model used to read or write the content body of the message.

Newly constructed messages objects have version set to HTTP/1.1. Newly constructed response objects also have result code set to status::ok.

Template Parameters

Type

Description

isRequest

true if this represents a request, or false if this represents a response. Some class data members are conditionally present depending on this value.

Body

A type meeting the requirements of Body.

Fields

The type of container used to hold the field value pairs.


PrevUpHomeNext