我需要在这些示例中使用API:
http://xml.fxstreet.com/ecopro/data/samples.htm
当我通过点击或打开新窗口打开它们时,它们可以正常工作。 当我从我发布的链接的“查看源”打开它们时,它们甚至可以正常工作,因此不需要附带的javascript / css代码。它让我按照自己的意愿多次这样做
但是当我在任何浏览器中复制并粘贴样本的链接时,我得到空的结果。
当我在c#:
中下载指向String的链接时,我也得到空结果String res = new System.Net.WebClient().DownloadString("http://xml.fxstreet.com/ecopro/data/data.aspx?view=day&format=xml&key=ff969c0f-709e-4086-afb3-d2afe1e9665f");
我不明白为什么......
答案 0 :(得分:1)
当使用Referer(在Firefox中测试)发出GET请求时,它开始工作。所以我建议稍微修改你的代码并伪造一个引用者。 我想,API处于过渡阶段或其他阶段,它们淡出旧URL并切换到client_key / token方法。
尝试一下(未经测试):
System.Net.WebClient client = new System.Net.WebClient();
client.Headers.Add("Referer", "http://xml.fxstreet.com/ecopro/data/samples.htm");
client.Headers.Add("Cache", "no-cache");
String res = client.DownloadString("http://xml.fxstreet.com/ecopro/data/data.aspx?view=day&format=xml&key=ff969c0f-709e-4086-afb3-d2afe1e9665f");