#urlencode #url #percent #escaping #urldecode #codec

urlencoding

一个用于进行 URL 百分比编码的 Rust 库

7 个稳定版本

2.1.3 2023年7月21日
2.1.2 2022年9月2日
2.1.0 2021年7月18日
1.3.3 2021年5月15日
0.2.0 2016年9月16日

#1134 in 编码

Download history 623863/week @ 2024-03-31 626157/week @ 2024-04-07 652869/week @ 2024-04-14 653925/week @ 2024-04-21 634055/week @ 2024-04-28 645553/week @ 2024-05-05 692217/week @ 2024-05-12 711200/week @ 2024-05-19 682520/week @ 2024-05-26 824998/week @ 2024-06-02 798628/week @ 2024-06-09 789272/week @ 2024-06-16 823337/week @ 2024-06-23 758536/week @ 2024-06-30 834080/week @ 2024-07-07 763892/week @ 2024-07-14

3,219,897 月下载量
用于 2,687 个crate (584 直接)

MIT 许可证

16KB
272

urlencoding

Latest Version

一个用于进行 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() 以获取一个 VecString

许可证

本项目采用 MIT 许可证。更多信息请参阅 LICENSE 文件。

无运行时依赖