| Home | Libraries | People | FAQ | More

##### http::write_header (1 of 2 overloads)

Write a header to a stream using a serializer.

###### Synopsis

Defined in header `<boost/beast/http/write.hpp>`

    template<
        class SyncWriteStream,
        bool isRequest,
        class Body,
        class Fields>
    std::size_t
    write_header(
        SyncWriteStream& stream,
        serializer< isRequest, Body, Fields >& sr);

###### Description

This function is used to write a header to a stream using a caller-provided HTTP/1 serializer. The call will block until one of the following conditions is true:

- The function `http::serializer::is_header_done` returns `true`
- An error occurs.

This operation is implemented in terms of one or more calls to the stream's `write_some` function.

###### Parameters

Name | Description
--- | ---
`stream` | The stream to which the data is to be written. The type must support the SyncWriteStream concept.
`sr` | The serializer to use.

###### Return Value

The number of bytes written to the stream.

###### Exceptions

Type | Thrown On
--- | ---
`system_error` | Thrown on failure.

###### Remarks

The implementation will call `http::serializer::split` with the value `true` on the serializer passed in.

###### See Also

`http::serializer`

Convenience header `<boost/beast/http.hpp>`