gpt4 book ai didi

C# Uri.EscapeDataString 在解码字符串中添加不正确的 "%25"

转载 作者:太空宇宙 更新时间:2023-11-03 10:37:30 25 4
gpt4 key购买 nike

我正在尝试使用 Uri.EscapeDataString 对网址进行 UrlEncode,但结果不正确。这是一个例子:

string url = "https://mega.co.nz/#!GVZFwAbB!NzdN2jp7A_WmQBLC4RJrCX8SzixFIEo7oZZARaMAmXQ";
string encodedUrl = Uri.EscapeDataString(url);

预期结果为:

https%3a%2f%2fmega.co.nz%2f%23!GVZFwAbB!NzdN2jp7A_WmQBLC4RJrCX8SzixFIEo7oZZARaMAmXQ

但实际的是:

https%253a%252f%252fmega.co.nz%252f%2523%21GVZFwAbB%21NzdN2jp7A_WmQBLC4RJrCX8SzixFIEo7oZZARaMAmXQ

如您所见,有一堆额外的 %25 不属于那里。 %25 不是“%”的编码吗?我的原始字符串中没有 %...这是怎么回事?

编辑:我不能为这个项目使用 System.Web 程序集,所以不幸的是我不能为此使用 HttpUtility.UrlEncode() 方法。

最佳答案

好吧,经过更多的搜索,似乎这可以完成工作,而不依赖于系统网络:

System.Net.WebUtility.UrlEncode(url);

编码是正确的,没有%25s。

关于C# Uri.EscapeDataString 在解码字符串中添加不正确的 "%25",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27076726/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com