1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
/// Byte pattern for matching 'content-length' header in HTTP requests.
///
/// Used for case-sensitive matching of the content-length header.
pub const CONTENT_LENGTH_PATTERN: & = b"content-length:";
/// Byte pattern for matching 'transfer-encoding' header in HTTP requests.
///
/// Used for case-sensitive matching of the transfer-encoding header.
pub const TRANSFER_ENCODING_PATTERN: & = b"transfer-encoding:";
/// Byte pattern for matching 'chunked' value in HTTP headers.
///
/// Used for case-sensitive matching of the chunked transfer encoding value.
pub const CHUNKED_PATTERN: & = b"chunked";
/// Error message used when the request method is neither GET nor POST.
pub const METHOD_NOT_ALLOWED: &str = "Method Not Allowed";
/// Error message used when a redirect was signalled but no target was found.
pub const MISSING_REDIRECT_URL: &str = "Missing Redirect URL";
/// Error message used when redirect handling is disabled by configuration.
pub const REDIRECT_NOT_ENABLED: &str = "Redirect Not Enabled";
/// Error message used when a redirect target was already visited.
pub const REDIRECT_URL_DEAD_LOOP: &str = "Redirect URL Dead Loop";
/// Error message used when the redirect budget is exhausted.
pub const MAX_REDIRECT_TIMES_EXCEEDED: &str = "Max Redirect Times Exceeded";
/// Error message used when a proxy handshake fails.
pub const INTERNAL_SERVER_ERROR: &str = "Internal Server Error";
/// Prefix of a successful HTTP/1.1 proxy response status line.
pub const HTTP_1_1_OK_PREFIX: &str = "HTTP/1.1 200";
/// Prefix of a successful HTTP/1.0 proxy response status line.
pub const HTTP_1_0_OK_PREFIX: &str = "HTTP/1.0 200";
/// Separator marking the end of an HTTP header block.
pub const HEADER_TERMINATOR: &str = "\r\n\r\n";
/// HTTP request-line method token for POST.
pub const HTTP_METHOD_POST: &str = "POST";