gpt4 book ai didi

c# - 在 .NET 3.5 中使用 URI 类时保持 url 编码

转载 作者:太空狗 更新时间:2023-10-29 23:46:50 28 4
gpt4 key购买 nike

我正在使用 .NET 3.5。

here 中描述的两种解决方案(配置文件中的属性 “genericUriParserOptions” 和构造函数参数 “dontEscape”)不适用于 .NET 3.5。

我希望 URI 构造函数不转义(意味着我想转义 URL 部分)任何东西。现在我不能使用配置文件了

genericUriParserOptions="DontUnescapePathDotsAndSlashes"

因为此属性仅适用于 .NET 4.0。但我也不能在 URI 构造函数中使用 "dontEscape" 参数,因为该构造函数在 .NET 3.5 中已过时并且始终为 false

如何在 .NET 3.5 中创建带有转义字符串的 URI

最佳答案

您应该只对用户名或 URL 中可能无效的其他部分进行编码。 URL 编码 URL 可能会导致问题,因为像这样:

string url = HttpUtility.UrlEncode("http://www.google.com/search?q=Example");

会产生

http%3a%2f%2fwww.google.com%2fsearch%3fq%3dExample

这显然不会奏效。相反,您应该只对查询字符串中键/值对的值进行编码,如下所示:

string url = "http://www.google.com/search?q=" + HttpUtility.UrlEncode("Example");

谢谢。

关于c# - 在 .NET 3.5 中使用 URI 类时保持 url 编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14588497/

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