HTTP module

ServerResponder

Base responder interface for handling one HTTP request on a server connection.

ServerResponder

#include <icy/http/server.h>

Base responder interface for handling one HTTP request on a server connection. Derived classes typically override [onRequest()](#onrequest) and optionally the streaming hooks.

Public Methods

ReturnNameDescription
ServerResponder inlineCreates a ServerResponder for the given connection.
voidonHeaders virtual inlineCalled when the incoming request headers have been parsed.
voidonPayload virtual inlineCalled for each chunk of incoming request body data.
voidonRequest virtual inlineCalled when the complete HTTP request has been received. Derived classes should write their response here.
voidonClose virtual inlineCalled when the connection is closed.
ServerConnection &connection inlineReturns the underlying server connection.
Request &request inlineReturns the current HTTP request from the underlying connection.
Response &response inlineReturns the current HTTP response from the underlying connection.

ServerResponder

inline

inline ServerResponder(ServerConnection & connection)

Creates a ServerResponder for the given connection.

Parameters

  • connection The server connection this responder handles.

onHeaders

virtual inline

virtual inline void onHeaders(Request & request)

Called when the incoming request headers have been parsed.

Parameters

  • request The parsed HTTP request with headers populated.

onPayload

virtual inline

virtual inline void onPayload(const MutableBuffer & body)

Called for each chunk of incoming request body data.

Parameters

  • body Buffer containing a chunk of the request body.

onRequest

virtual inline

virtual inline void onRequest(Request & request, Response & response)

Called when the complete HTTP request has been received. Derived classes should write their response here.

Parameters

  • request The fully received HTTP request.

  • response The HTTP response to populate and send.


onClose

virtual inline

virtual inline void onClose()

Called when the connection is closed.


connection

inline

inline ServerConnection & connection()

Returns the underlying server connection.


request

inline

inline Request & request()

Returns the current HTTP request from the underlying connection.


response

inline

inline Response & response()

Returns the current HTTP response from the underlying connection.

Protected Attributes

ReturnNameDescription
ServerConnection &_connection

_connection

ServerConnection & _connection

Private Methods

ReturnNameDescription
ServerResponderDeleted constructor.

ServerResponder

ServerResponder(const ServerResponder &) = delete

Deleted constructor.