从客户端浏览器读取以Xml格式返回数据的URL,而不使用客户端Internet向服务器发送请求

时间:2013-04-22 11:09:52

标签: javascript asp.net asp.net-mvc-3 c#-4.0

我有一个URL http://www.straitstimes.com/print/singapore/rss.xml#将以XML格式返回数据,我必须利用客户端Internet来检索数据而不是服务器端Internet。

我的意思是即使在服务器上没有任何Internet访问我应该使用客户端Internet获取数据

我试过使用此代码

System.Net.WebClient webClient = new System.Net.WebClient();
strSource = webClient.DownloadString(url);
webClient.Dispose();

此外,我尝试使用

XmlDocument doc = new XmlDocument();
doc.Load(url);
strSource = doc.InnerXml;

但它没有帮助我

而且我也无法使用服务器来检索数据,我无需请求服务器即可从客户端浏览器执行此操作。

请建议我该怎么做..

由于

1 个答案:

答案 0 :(得分:0)

你无法做到这一点,因为实现它的唯一方法是使用javascript AJAX调用,除了这个RSS源不在你的站点上托管,相同的源策略限制将阻止你访问它。

对于相同的原始政策限制,有两种可能的解决方法:

  • JSONP(在您的情况下不起作用,因为这是XML,而不是JSON)
  • CORS

所以这只有在远程服务器支持CORS时才有效。当然只在支持CORS的浏览器中使用。