4 个版本
0.0.4 | 2023年7月24日 |
---|---|
0.0.3 | 2021年8月18日 |
0.0.2 | 2021年8月18日 |
0.0.1 | 2021年8月18日 |
#1783 在 解析器实现
7KB
90 行
simple_url_parser
一个简单的 URL 解析器
fn main(){
let mock_url = "https://lb:[email protected]:123/blog/01?a=1&b=2#132456";
let url_obj = URL::parse(mock_url).unwrap();
assert_eq!(url_obj.scheme, "https:");
assert_eq!(url_obj.username, "lb");
assert_eq!(url_obj.password, "123456");
assert_eq!(url_obj.host, "www.google.com");
assert_eq!(url_obj.port, "123");
assert_eq!(url_obj.path, "/blog/01");
assert_eq!(url_obj.query, "?a=1&b=2");
assert_eq!(url_obj.hash, "#132456");
let url_str = URL::stringify(&url_obj);
assert_eq!(url_str, mock_url);
}
谢谢
lib.rs
:
simple_url_parser
一个简单的 URL 解析器
fn main(){
let mock_url = "https://lb:[email protected]:123/blog/01?a=1&b=2#132456";
let url_obj = URL::parse(mock_url).unwrap();
assert_eq!(url_obj.scheme, "https:");
assert_eq!(url_obj.username, "lb");
assert_eq!(url_obj.password, "123456");
assert_eq!(url_obj.host, "www.google.com");
assert_eq!(url_obj.port, "123");
assert_eq!(url_obj.path, "/blog/01");
assert_eq!(url_obj.query, "?a=1&b=2");
assert_eq!(url_obj.hash, "#132456");
let url_str = URL::stringify(&url_obj);
assert_eq!(url_str, mock_url);
}
谢谢
依赖
~1MB
~20K SLoC