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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#[derive(PartialEq)]
pub enum HttpMethod {
GET,
POST,
PUT,
DELETE,
OPTIONS,
HEAD,
CONNECT,
TRACE,
PATCH,
UNKNOWN,
}
impl HttpMethod {
pub fn parse(method_str: &str) -> HttpMethod {
match method_str {
"GET" => HttpMethod::GET,
"POST" => HttpMethod::POST,
"PUT" => HttpMethod::PUT,
"DELETE" => HttpMethod::DELETE,
"OPTIONS" => HttpMethod::OPTIONS,
"HEAD" => HttpMethod::HEAD,
"CONNECT" => HttpMethod::CONNECT,
"TRACE" => HttpMethod::TRACE,
"PATCH" => HttpMethod::PATCH,
_ => HttpMethod::UNKNOWN,
}
}
}
pub struct Request {
pub method: HttpMethod,
pub url: String,
pub headers: String,
pub body: String,
}
pub struct Response {
pub code: String,
pub content: String,
}