C# Class HttpServer.HttpRequestParser

Parses a HTTP request directly from a stream
Afficher le fichier Open project: 3di/3di-viewer-rei-libs Class Usage Examples

Private Properties

Свойство Type Description
AddToBody int
Clear void

Méthodes publiques

Méthode Description
HttpRequestParser ( RequestCompletedHandler requestCompleted, ILogWriter logWriter ) : System

Create a new request parser

ParseMessage ( byte buffer, int offset, int size ) : int

Parse a message

Méthodes protégées

Méthode Description
OnFirstLine ( string value ) : void

Parse request line

Expects the following format: "Method SP Request-URI SP HTTP-Version CRLF"

OnHeader ( string name, string value ) : void

We've parsed a new header.

Private Methods

Méthode Description
AddToBody ( byte buffer, int offset, int count ) : int

Add a number of bytes to the body

Clear ( ) : void

Remove all state information for the request.

Method Details

HttpRequestParser() public méthode

Create a new request parser
public HttpRequestParser ( RequestCompletedHandler requestCompleted, ILogWriter logWriter ) : System
requestCompleted RequestCompletedHandler delegate called when a complete request have been generated
logWriter ILogWriter delegate receiving log entries.
Résultat System

OnFirstLine() protected méthode

Parse request line
Expects the following format: "Method SP Request-URI SP HTTP-Version CRLF"
If line is incorrect
protected OnFirstLine ( string value ) : void
value string
Résultat void

OnHeader() protected méthode

We've parsed a new header.
If content length cannot be parsed.
protected OnHeader ( string name, string value ) : void
name string Name in lower case
value string Value, unmodified.
Résultat void

ParseMessage() public méthode

Parse a message
public ParseMessage ( byte buffer, int offset, int size ) : int
buffer byte
offset int where in buffer that parsing should start
size int number of bytes to parse
Résultat int