Parsing 如何在rust中获取原始URL路径?
假设我有一个URL:Parsing 如何在rust中获取原始URL路径?,parsing,url,path,Parsing,Url,Path,假设我有一个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 u
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解析板条箱可以做到这一点,并且已知是可靠的/经过测试的