2. 解析HTTP请求
需要定义三个数据结构
构建两个package,并且在根目录下的toml文件中将这两个package加进去
cargo new httpserver
cargo new --lib http
声明一个模块
/Users/qinjianquan/s1/http/src/lib.rs
pub mod httprequest;
再在如下文件夹中创建两个文件
/Users/qinjianquan/s1/http/src
httprequest.rs
httpresponse.rs
然后在继续编写代码
/Users/qinjianquan/s1/http/src/httprequest.rs
use std::collections::HashMap;
#[derive(Debug,PartialEq)]
//1.method
pub enum Method {
Get,
Post,
Uninitialized,
}
//为枚举实现方法
impl From<&str> for Method {
fn from(s:&str) -> Method {
match s {
"GET" =>Method::Get,
"POST"=>Method::Post,
_ => Method::Uninitialized,
}
}
}
//2.version
#[derive(Debug,PartialEq)]
pub enum Version {
V1_1,
V2_0,
Uninitia