我的问题是关于在没有转义的情况下将URL传递给HttpWebRequest,我搜索了论坛和互联网,但我找不到一个好的解决方案。
我有以下网址:string URL= www.website.com/sub/redirec\t\bs\dd
所以当我创建这样的uri时:
Uri uri = new Uri(URL);
HttpWebRequest request = (HttpWebRequest) WebRequest.Create(uri);
在这种情况下,在get方法中,我将获得以下URL:www.website.com/sub/redirect%5Ct%5Cbc%5Cdd
此符号“\”将替换为“%5C”。对我来说,不要发生什么至关重要?
我可以通过以下方式避免这种情况:
Uri uri = new Uri(URL, true); //bool dontEscape
但是这个构造函数已经过时了。如何在不使用过时的情况下获得相同的效果?
答案 0 :(得分:2)
使用此
Uri uri = new Uri(Uri.EscapeUriString(URL));