c# - 在 C# 中使用 Url 编码的字符串创建新的 Uri
问题描述
问题:
我需要创建包含所有属性的 Uri,例如 (OriginalString, Query) 作为 URL 编码。
我尝试了什么:
我可以使用以下选项格式化 Uri 的输入字符串:
string encodedString = inputString.Replace("'", "%27"); //example encoding
或者
System.Net.WebUtility.UrlEncode (inputString)
尝试了所有将字符串转换为编码字符串的方法,例如 EscapeDataString/EscapeUriString 等
我需要达到的目标
var uri = new Uri(encodedString);
当我再次创建新的 Uri (如上)%27
被替换为'
.
更新 1: 并非 uri 的所有字段都转换为 %27。OriginalString 在我的情况下被转换。
我想将此 uri 传递给 HttpClient。
我们是否有任何机制可以使用编码字符串制作 Uri。
解决方案
试试 HttpUtility.UrlEncode(input string)。有关详细信息,请参阅https://secretgeek.net/uri_enconding。
推荐阅读
- google-apps-script - insertRowBefore() 不显示值
- javascript - 获取div中第二个孩子的文本 - jQuery
- python-3.x - 没有获得完整的 aws ec2 列表
- constraints - 约束规划中的全局约束是什么?
- java - Java中的B类有什么区别
扩展 A 和B级 扩展 A - sql - 在游标关闭后访问游标变量 %ROWCOUNT 时引发 INVALID_CURSOR 异常
- c# - OpenQA.Selenium.NoSuchElementException:使用 Selenium 和 C# 在页面上定位元素时无法定位元素错误
- c# - 以编程方式修改 Windows 鼠标滚动属性
- vba - vb.net 错误当前连接处于打开状态
- react-native - 当任何项目更改在选项卡视图中