32个稳定版本
3.0.0 | 2024年5月1日 |
---|---|
2.0.2 | 2023年12月24日 |
2.0.1 |
|
2.0.0 | 2023年3月14日 |
1.1.7 | 2018年11月16日 |
在编码类别中排名第84
每月下载量234,084
在164个crate中使用(直接使用40个)
21KB
347 行
Base64 URL
Base64 URL编码、解码、转义和反转义。
示例
将数据编码为Base64-URL字符串。
assert_eq!("SGVsbG8sIHdvcmxkIQ", base64_url::encode("Hello, world!"));
将Base64-URL字符串解码为数据。
assert_eq!(b"Hello, world!", base64_url::decode("SGVsbG8sIHdvcmxkIQ").unwrap().as_slice());
将Base64字符串转义为Base64-URL字符串。转换不涉及Base64解码。您需要自行确保输入字符串是正确的Base64字符串。
assert_eq!("SGVsbG8sIHdvcmxkIQ", base64_url::escape("SGVsbG8sIHdvcmxkIQ=="));
将Base64-URL字符串反转义为Base64-URL字符串。转换不涉及Base64解码。您需要自行确保输入字符串是正确的Base64-URL字符串。
assert_eq!("SGVsbG8sIHdvcmxkIQ==", base64_url::unescape("SGVsbG8sIHdvcmxkIQ"));
此外,您还可以使用其他encode_*
、decode_*
、escape_*
、unescape_*
关联函数处理更具体的情况。例如,
let hash = &[1, 2, 3, 4, 5, 6, 7, 8, 9];
let mut url = String::from("https://example.com/?hash=");
assert_eq!("AQIDBAUGBwgJ", base64_url::encode_to_string(hash, &mut url));
assert_eq!("https://example.com/?hash=AQIDBAUGBwgJ", url);
无需Std
禁用默认功能,以无std编译此crate。
[dependencies.base64-url]
version = "*"
default-features = false
Crates.io
https://crates.io/crates/base64-url
文档
许可协议
依赖项
~240KB