A wrapper for nodejs/http-parser
.
More...
#include <parser.h>
Public Member Functions | |
HTTPParser (Handler *handler) | |
bool | feed (const char *buffer, int length) |
Parse a buffer into the different sections of an HTTP request. | |
bool | done () |
void | clear () |
void | process_url () |
void | process_header () |
void | process_message () |
void | set_connection_parameters () |
Static Public Member Functions | |
static int | on_message_begin (http_parser *) |
static int | on_method (http_parser *self_) |
static int | on_url (http_parser *self_, const char *at, size_t length) |
static int | on_header_field (http_parser *self_, const char *at, size_t length) |
static int | on_header_value (http_parser *self_, const char *at, size_t length) |
static int | on_headers_complete (http_parser *self_) |
static int | on_body (http_parser *self_, const char *at, size_t length) |
static int | on_message_complete (http_parser *self_) |
Public Attributes | |
request | req |
Public Attributes inherited from crow::http_parser | |
unsigned int | flags: 7 |
unsigned int | state: 8 |
unsigned int | header_state: 7 |
unsigned int | index: 5 |
unsigned int | uses_transfer_encoding: 1 |
unsigned int | allow_chunked_length: 1 |
unsigned int | lenient_http_headers: 1 |
uint32_t | nread |
uint64_t | content_length |
unsigned long | qs_point |
unsigned char | http_major |
unsigned char | http_minor |
unsigned int | method: 8 |
unsigned int | http_errno: 7 |
unsigned int | upgrade: 1 |
void * | data |
A wrapper for nodejs/http-parser
.
Used to generate a crow::request from the TCP socket buffer.
request crow::HTTPParser< Handler >::req |
The final request that this parser outputs.
Data parsed is put directly into this object as soon as the related callback returns. (e.g. the request will have the cooorect method as soon as on_method() returns)