1个稳定版本
| 1.0.0 | 2022年4月12日 |
|---|
在 编码 中排名 #1721
15KB
242 行
urlencoding
一个用于URL百分比编码和解码的小型Rust库。除了字母数字和 -, _, ., ~ 外,它会对所有内容进行百分比编码。
解码时,+ 不会被处理为空格。错误恢复遵循 WHATWG URL标准。
用法
要编码一个字符串,执行以下操作
use urlencoding::encode;
let encoded = encode("This string will be URL encoded.");
println!("{}", encoded);
// This%20string%20will%20be%20URL%20encoded.
要解码一个字符串,操作稍有不同
use urlencoding::decode;
let decoded = decode("%F0%9F%91%BE%20Exterminate%21")?;
println!("{}", decoded);
// 👾 Exterminate!
允许任意字节和无效UTF-8的解码
use urlencoding::decode_binary;
let binary = decode_binary(b"%F1%F2%F3%C0%C1%C2");
let decoded = String::from_utf8_lossy(&binary);
此库返回 Cow 以避免在不需要解码/编码时分配内存。在 Cow 上调用 .into_owned() 以获取一个 Vec 或 String。
许可证
本项目采用MIT许可证。有关更多信息,请参阅 LICENSE 文件。