【发布时间】:2015-07-14 15:58:53
【问题描述】:
我使用的代码是
WebClient webClient = new WebClient();
string xmlResult = webClient.DownloadString("https://kat.cr/usearch/ubuntu/?rss=1");
我有点困惑,因为 URL 似乎通过隧道进入了二级页面 kastatic.com:443 然后是 kat.cr:443(如果我正确理解 Fiddler)。
服务器证书似乎没问题,因此添加以下代码无济于事
ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, sslPolicyErrors) =>
{
return true;
};
我还尝试在 webClient 对象上设置 useragent 标头,以防我需要将其识别为浏览器或其他东西,但我认为我没有走在正确的轨道上。
编辑:我得到的响应是“12a9”,后面有 2 个奇怪的 ascii 字符(一个问号符号和一个带黑色边框的白色圆圈。
【问题讨论】:
-
有什么问题?你得到了什么错误,如果有的话?
-
Whats this?我记得很久以前就不得不做这样的事情。 Defo 与 SSL 有关,因此值得一试
-
它返回普通的
XML。怎么了? -
您好 musefan,我看到了那个帖子,但实际上并不适用。该网站似乎正在使用 TLS/1.2
-
嗨,Amit,如果您在浏览器中查看 URL,您将获得 XML。如果将 URL 放入 webClient.DownloadString 中,则会得到一个符号字符(我假设它指的是重定向或隧道)。