DownloadString给出了一个HTTPS URL似乎超时在浏览器中工作 [英] DownloadString gives a timeout on a https url seeming to work in a browser
本文介绍了DownloadString给出了一个HTTPS URL似乎超时在浏览器中工作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想从这个URL的内容到我的程序:的https: //data.mtgox.com/api/2/BTCUSD/money/ticker 。当参观我的任何浏览器的URL,它完美的作品。
I am trying to get the content from this URL into my program: https://data.mtgox.com/api/2/BTCUSD/money/ticker . When visiting the URL in any of my browsers, it works perfectly.
然而,在我的程序,它会等待90秒,并给我一个暂停。
However in my program, it waits for 90 seconds, and give me a timeout.
这是我的代码:
private const string ApiLnk = "https://data.mtgox.com/api/2/BTCUSD/money/ticker";
static void Main(string[] args)
{
using (WebClient client = new WebClient())
{
string s = client.DownloadString(ApiLnk);
int i = 0;
}
}
字符串s从未被分配,作为客户端。 DownloadString()是一个拖延。
The string s never gets assigned, as the client.DownloadString() is the one stalling.
当得到一个正常的URL如Google.com,它完美的作品。
When getting a normal URL like Google.com, it works perfectly.
任何想法有什么不对?
推荐答案
只要设置 HttpRequestHeader.Accept
和 HttpRequestHeader.UserAgent
头。这适用
using (WebClient client = new WebClient())
{
client.Headers[HttpRequestHeader.Accept] = "text/html, image/png, image/jpeg, image/gif, */*;q=0.1";
client.Headers[HttpRequestHeader.UserAgent] = "Mozilla/5.0 (Windows; U; Windows NT 6.1; de; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12";
string s = client.DownloadString(ApiLnk);
int i = 0;
}
这篇关于DownloadString给出了一个HTTPS URL似乎超时在浏览器中工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文