## Class request

zeep::http::request

## Synopsis

    // In header: <zeep/http/request.hpp>

    class request {
    public:
      // types
      typedef header ;
      typedef header ;

      // construct/copy/destruct
      (, ,
               = { , header > && = {},
               = {});
      (request &);
      request & (request &);

      // friend functions
       (, request &);

      // public member functions
       ();
       () ;
       () ;
       ();
       () ;
       () ;
       ();
       () ;
       () ;
       () ;
       ();
       () ;
       () ;
       () ;
       (, );
       () ;
       () ;
       ();
      json::element () ;
       (json::element &&);
       () ;
       (, ) ;
      template<typename T,
               typename std::enable_if_t< std::is_floating_point_v< T >, int >>
         (, ) ;
      template<typename T,
               typename std::enable_if_t< std::is_integral_v< T > and not std::is_same_v< T, bool >, int >>
         (, ) ;
      template<typename T,
               typename std::enable_if_t< std::is_same_v< T, bool >, int >>
         (, ) ;
       () ;
      file_param () ;
      file_param > () ;
       () ;
       () ;
       () ;
       (, );
       () ;
       () ;
       (, );
       (, );
       () ;

      // private member functions
       ();
    };

## Description

request contains the parsed original HTTP request as received by the server.

### `request` public construct/copy/destruct

1.     ( method,  uri,
                version = { ,
               header > && headers = {},  payload = {});

2.     (request & req);

3.     request & (request & rhs);

### `request` friend functions

1.      ( io, request & req);

   For debugging purposes.

### `request` public member functions

1.      ( socket);

   Fetch the local address from the connected socket.

2.      () ;

3.      () ;

   Get the HTTP version requested.

4.      ( method);

   Set the METHOD type (POST, GET, etc)

5.      () ;

   Return the METHOD type (POST, GET, etc)

6.      () ;

   Return the original URI as requested.

7.      ( uri);

   Set the URI.

8.      () ;

   Get the address of the connecting remote.

9.      () ;

   Get the entire request line (convenience method)

10.      () ;

    Return the payload.

11.      ( payload);

    Set the payload.

12.      () ;

    Return the time at which this request was received.

13.      ( type) ;

    Return the value in the Accept header for type.

14.      () ;

    Check for Connection: keep-alive header.

15.      ( name,  value);

    Set or replace a named header.

16.      () ;

    Return the list of headers.

17.      ( name) ;

    Return the named header.

18.      ( name);

    Remove this header from the list of headers.

19.     json::element () ;

    Get the credentials. This is filled in if the request was validated.

20.      (json::element && credentials);

    Set the credentials for the request.

21.      ( name) ;

    Return the named parameter.

    Fetch parameters from a request, either from the URL or from the payload in case the request contains a url-encoded or multi-part content-type header

22.      ( name,  defaultValue) ;

    Return the value of the parameter named name or the defaultValue if this parameter was not found.

23.     template<typename T,
                 typename std::enable_if_t< std::is_floating_point_v< T >, int >>
           ( name,  defaultValue) ;

    Return the value of the parameter named name or the defaultValue if this parameter was not found.

24.     template<typename T,
                 typename std::enable_if_t< std::is_integral_v< T > and not std::is_same_v< T, bool >, int >>
           ( name,  defaultValue) ;

    Return the value of the parameter named name or the defaultValue if this parameter was not found.

25.     template<typename T,
                 typename std::enable_if_t< std::is_same_v< T, bool >, int >>
           ( name,  defaultValue) ;

    Return the value of the parameter named name or the defaultValue if this parameter was not found.

26.      () ;

    Return a std::multimap of name/value pairs for all parameters.

27.     file_param ( name) ;

    Return the info for a file parameter with name name.

28.     file_param > ( name) ;

    Return the info for all file parameters with name name.

29.      ( name) ;

    Return whether the named parameter is present in the request.

30.      ( name) ;

    Return the value of HTTP Cookie with name name.

31.      ( name) ;

    Return the value of HTTP Cookie with name name.

32.      ( name,  value);

    Set the value of HTTP Cookie with name name to value.

33.      () ;

    Return the content of this request in a sequence of const_buffers.

    Can be used in code that sends HTTP requests

34.      () ;

    Return the Accept-Language header value in the request as a std::locale object.

35.      ( text,  contentType);

    suppose we want to construct requests...

36.      ( name,  value);

    set a header

37.      ( name) ;

    Return value and flag indicating the existence of a parameter named name.

### `request` private member functions

1.      ( address);