32个稳定版本

3.0.0 2024年5月1日
2.0.2 2023年12月24日
2.0.1 2023年11月26日
2.0.0 2023年3月14日
1.1.7 2018年11月16日

编码类别中排名第84

Download history 61147/week @ 2024-05-01 60670/week @ 2024-05-08 65142/week @ 2024-05-15 63507/week @ 2024-05-22 68918/week @ 2024-05-29 64418/week @ 2024-06-05 65515/week @ 2024-06-12 62661/week @ 2024-06-19 65821/week @ 2024-06-26 50735/week @ 2024-07-03 61376/week @ 2024-07-10 59400/week @ 2024-07-17 65020/week @ 2024-07-24 49033/week @ 2024-07-31 54026/week @ 2024-08-07 52985/week @ 2024-08-14

每月下载量234,084
164个crate中使用(直接使用40个)

MIT许可协议

21KB
347

Base64 URL

CI

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

文档

https://docs.rs/base64-url

许可协议

MIT

依赖项

~240KB