C# 从“地址”下载字符串;http://www.last.fm/music/Boney%20M./+“图像”;
我正试图从地址“”下载字符串,但是 返回nullC# 从“地址”下载字符串;http://www.last.fm/music/Boney%20M./+“图像”;,c#,webclient,last.fm,C#,Webclient,Last.fm,我正试图从地址“”下载字符串,但是 返回null WebClient webClient = new WebClient(); string html = webClient.DownloadString(new Uri("http://www.last.fm/music/Boney%20M./+images")); 刚刚在VS2012 Express下的一个测试应用程序上试用了它,它按预期工作 一些想法: 问题可能在于您在代理背后,您可能需要创建WebProxy对象并提供凭据 有时(事实并
WebClient webClient = new WebClient();
string html = webClient.DownloadString(new Uri("http://www.last.fm/music/Boney%20M./+images"));
刚刚在VS2012 Express下的一个测试应用程序上试用了它,它按预期工作 一些想法:
- 问题可能在于您在代理背后,您可能需要创建WebProxy对象并提供凭据
- 有时(事实并非如此,因为这对我来说是有效的)网站需要一些标题,例如HTTP_REFERER
- 问题可能在于您在代理背后,您可能需要创建WebProxy对象并提供凭据
- 有时(事实并非如此,因为这对我来说是有效的)网站需要一些标题,例如HTTP_REFERER
http://www.last.fm/music/Boney+M./+图像
(请注意缺少的%20
)。我不知道WebClient如何处理重定向,但请尝试新的重定向地址,看看会发生什么。@Moje我相信你已经了解了一些事情。在PowerShell中执行上述操作时,调用带有“1”参数的“DownloadString”时出现异常:“尝试了太多的自动重定向。”
。FWIW,用+
替换空格似乎也没有帮助。可能相关:在这里没有意义。第一个重定向将空间更改为+
。但如果我用那个地址重试,我会得到另一个重定向到它自己。我猜它正在寻找一些头文件,并陷入了重定向循环,因为它们丢失了。。。我想知道为什么@OnoSendai能让它工作。当使用我的浏览器访问时,我想它会重定向到http://www.last.fm/music/Boney+M./+图像
(请注意缺少的%20
)。我不知道WebClient如何处理重定向,但请尝试新的重定向地址,看看会发生什么。@Moje我相信你已经了解了一些事情。在PowerShell中执行上述操作时,调用带有“1”参数的“DownloadString”时出现异常:“尝试了太多的自动重定向。”
。FWIW,用+
替换空格似乎也没有帮助。可能相关:在这里没有意义。第一个重定向将空间更改为+
。但如果我用那个地址重试,我会得到另一个重定向到它自己。我猜它正在寻找一些头文件,并陷入了重定向循环,因为它们丢失了。。。我想知道为什么@OnoSendai让它起作用。