URI格式化URL

时间:2012-06-27 11:55:03

标签: c# .net .net-3.5

所有

我有以下几行代码......(。net 3.5)

string URL = "http://api.linkedin.com/v1/people/url=http%3a%2f%2fuk.linkedin.com%2fpub%2fjulian-welby-everard%2f0%2fb97%2f416";
UriBuilder uri = new UriBuilder(URL);

这会在http://api.linkedin.com/v1/people/url=http://uk.linkedin.com/pub/julian-welby-everard/0/b97/416的URI对象中返回一个URL,该对象已被解码,我不知道这是怎么回事

所以我尝试将数据编码两次给出

string URL = "http://api.linkedin.com/v1/people/url=http%253a%252f%252fuk.linkedin.com%252fpub%252fjulian-welby-everard%252f0%252fb97%252f416";
UriBuilder uri = new UriBuilder(URL);

这现在返回URL如下http://api.linkedin.com/v1/people/url=http%253a%252f%252fuk.linkedin.com%252fpub%252fjulian-welby-everard%252f0%252fb97%252f416请注意,这次没有解码任何东西,我希望它会像第一次尝试那样解码,但由于这是双重编码,它会返回字符串格式正确。

所以问题如下,我可以阻止URI对象解码提供的URL,这样我就可以将正确的数据传递给HttpWebRequest。

儒略

1 个答案:

答案 0 :(得分:1)

我相信您正在寻找HttpUtility.UrlEncode(“http://www.google.com/”),它会返回http%3a%2f%2fwww.google.com%2f。