Webserv
Loading...
Searching...
No Matches
http Namespace Reference

Namespaces

namespace  upload

Classes

class  BodyFromCgi
class  BodyInMemory
class  CGIHandler
class  ChunkedBodyParser
class  DefaultErrorHandler
class  DirectoryListingHandler
struct  ErrorKey
class  FileBody
class  FileDeleteHandler
class  FileUploadHandler
class  Headers
 Manages a collection of HTTP headers. More...
class  HeadHeaderHandler
class  IHandler
 Abstract interface for all request handlers (Strategy Pattern). More...
class  IResponseBody
 An abstract interface for all HTTP response body sources. More...
class  JsonErrorHandler
struct  Key
class  MimeTypes
class  Request
class  RequestParser
class  RequestStartLine
 Holds the parsed components of an HTTP request's first line. More...
class  Response
 A data container for an HTTP response, managed via a fluent API. More...
class  ResponseStartLine
 A simple data aggregate for the HTTP response status line. More...
class  ReturnHandler
class  Router
 The central request dispatcher (Facade). More...
class  StaticFileHandler
 Handles serving static files from the filesystem. More...

Typedefs

typedef std::map< ErrorKey, std::string > ErrorPageCache
typedef std::map< Key, std::string > JsonErrorPageCache

Enumerations

enum  HttpStatus {
  UNKNOWN_STATUS = 0 , OK = 200 , CREATED = 201 , ACCEPTED = 202 ,
  NO_CONTENT = 204 , MOVED_PERMANENTLY = 301 , FOUND = 302 , SEE_OTHER = 303 ,
  NOT_MODIFIED = 304 , TEMPORARY_REDIRECT = 307 , PERMANENT_REDIRECT = 308 , BAD_REQUEST = 400 ,
  UNAUTHORIZED = 401 , FORBIDDEN = 403 , NOT_FOUND = 404 , METHOD_NOT_ALLOWED = 405 ,
  CONFLICT = 409 , LENGTH_REQUIRED = 411 , PAYLOAD_TOO_LARGE = 413 , UNSUPPORTED_MEDIA_TYPE = 415 ,
  INTERNAL_SERVER_ERROR = 500 , NOT_IMPLEMENTED = 501 , BAD_GATEWAY = 502
}

Functions

HttpStatus toHttpStatus (int)
HttpStatus toHttpStatus (const std::string &codeStr)
const char * getReasonPhrase (HttpStatus status)
std::ostream & operator<< (std::ostream &o, RequestParser::State st)

Typedef Documentation

◆ ErrorPageCache

typedef std::map<ErrorKey, std::string> http::ErrorPageCache

◆ JsonErrorPageCache

typedef std::map<Key, std::string> http::JsonErrorPageCache

Enumeration Type Documentation

◆ HttpStatus

Enumerator
UNKNOWN_STATUS 
OK 
CREATED 

*Request succeeded.

ACCEPTED 

*Resource created.

NO_CONTENT 

Request accepted for processing.

MOVED_PERMANENTLY 

*Request succeeded; no body in response (e.g., DELETE).

FOUND 

*Resource moved to new URL (permanent).

SEE_OTHER 

*Resource temporarily at different URL.

NOT_MODIFIED 

See another URL (often used after POST).

TEMPORARY_REDIRECT 

Resource not modified since last access.

PERMANENT_REDIRECT 

Resource has been temporarily moved.

BAD_REQUEST 

Resource has been permantly moved.

UNAUTHORIZED 

*Malformed syntax or invalid parameters (client error).

FORBIDDEN 

*Authentication failed or is missing (Unauthenticated).

NOT_FOUND 

*Client authenticated but not authorized for action (Unauthorized).

METHOD_NOT_ALLOWED 

*Requested resource doesn't exist.

CONFLICT 

*HTTP method not allowed for resource.

LENGTH_REQUIRED 

*Request failed due to resource conflict (e.g., duplicate).

PAYLOAD_TOO_LARGE 

Missing Content-Length header.

UNSUPPORTED_MEDIA_TYPE 

Request body exceeds limit.

INTERNAL_SERVER_ERROR 

Request entity format is not supported.

NOT_IMPLEMENTED 

*Generic server-side failure.

BAD_GATEWAY 

Server lacks functionality to fulfill request.

Function Documentation

◆ getReasonPhrase()

const char * http::getReasonPhrase ( HttpStatus status)

◆ operator<<()

std::ostream & http::operator<< ( std::ostream & o,
RequestParser::State st )

◆ toHttpStatus() [1/2]

HttpStatus http::toHttpStatus ( const std::string & codeStr)

◆ toHttpStatus() [2/2]

HttpStatus http::toHttpStatus ( int code)