#url #prefix #https #http #ftp

无需 std url-prefix

用于创建 URL 前缀字符串的库

24 个稳定版本

2.0.4 2022年3月19日
2.0.3 2021年4月22日
2.0.2 2021年3月11日
2.0.1 2020年7月29日
1.3.0 2018年11月16日

#113 in 值格式化

Download history 60/week @ 2024-07-02

69 每月下载量

MIT 许可证

7KB
72 代码行

URL 前缀

CI

此crate可以通过输入协议、域名、端口号和路径来创建 URL 前缀字符串,无需额外的解析。

为什么我们需要这个?

有时我们的Web应用程序在不同的协议(HTTP/HTTPS)和域名上运行。编写一些像下面的代码来格式化URL是非常无聊的

let mut url_prefix = String::new();
if is_https {
    url_prefix.push_str("https://");
} else {
    url_prefix.push_str("http://");
}
url_prefix.push_str(domain);

if is_https && port != 443 || !is_https && port != 80 {
    url_prefix.push_str(":");
    url_prefix.push_str(&port.to_string());
}

相反,我们可以轻松地使用这个crate来创建 URL 前缀字符串。例如,

let prefix = url_prefix::create_prefix(url_prefix::Protocol::HTTPS, "magiclen.org", None, None);

assert_eq!("https://magiclen.org", prefix);
let prefix = url_prefix::create_prefix(url_prefix::Protocol::HTTPS, "magiclen.org", Some(8100), Some("url-prefix"));

assert_eq!("https://magiclen.org:8100/url-prefix", prefix);

Crates.io

https://crates.io/crates/url-prefix

文档

https://docs.rs/url-prefix

许可证

MIT

依赖项

~63KB