parsing - 如何在 rust 中获取原始 URL 路径?
问题描述
假设我有网址:
http://host/path/to/../some/thing
我想解析 URL 并获取原始/未触及的路径字符串:
/path/to/../some/thing
使用 url::Url,我可以这样做:
let url = url::Url::parse("http://host/path/to/../some/thing").unwrap();
println!("{}", url.path());
但这给出了路径的规范化版本:
/path/some/thing
url::Url 做的比我想要的要多。(它还对事物进行百分比编码。)
其他一些语言使它变得容易,例如在 PHP 中,我可以这样做:
$ php -r 'echo parse_url( "http://host/path/to/../some/thing" )["path"] . "\n";'
/path/to/../some/thing
那么,任何人都可以将我指向另一个可以做到这一点并且已知是可靠/经过测试的 URL 解析板条箱吗?
解决方案
推荐阅读
- node.js - 尝试使用 firebase-admin 从 Cloud Run 服务访问 FirestoreAdminClient。错误:7 PERMISSION_DENIED:调用者没有权限
- tkinter - tkinter 条目的回调仅执行一次
- maven - 如何使用 pom.xml 中竹子的元数据选项卡下定义的构建特定变量
- python - Python:将列表中的每个项目定义为集合
- python-3.x - 如何在 matplotlib-cartopy geoaxes 中正确水平打包不同的补丁,而不会造成补丁之间的间隙?
- gatling - Gatling 设置顺序场景
- php - 使用 PHP 和 ImageMagick 递归调整图像大小和命名时,如何根据现有文件名和扩展名最好地编写新文件
- javascript - 右侧我的 HTML 表格中的奇怪的额外框
- vba - Word VBA - 保存时在文件名中添加日期和文档属性
- python - Xlwings Excel 和 Windows 任务计划程序问题