2012-06-16 22 views
0

我试图用一个简单的C#WebForms应用程序以编程方式下载RSS提要。请求RSS提要在浏览器中工作,但不使用XmlDocument.Load()

RSS提要的URI包含特定于我的登录详细信息的授权令牌。

如果我使用WebBrowser控件请求RSS提要,则提要用HTML封装并且不可解析。

如果我要求使用

var rssXml = new XmlDocument(); 
rssXml.Load(feedUri); 

然后返回401 RSS源 - 未经授权响应。但是,我可以打开一个浏览器,清除主机站点的所有cookie(实际上,这是我从未用于访问主机站点的一种很少使用的浏览器),并使用相同的RSS URI和期望的RSS饲料已收到。这表明URI中的授权令牌已被接受。

那么,如何通过使用此代码无法成功请求RSS提要?

var rssXml = new XmlDocument(); 
rssXml.Load(feedUri); 
+0

也许你应该使用'WebClient'或'HttpWebrequest'(支持认证)来下载你的xml,然后将它加载到XmlDocument。 –

+0

当你说“哪些支持认证”时,你的意思是认证cookie,对吧?当然RSS饲料不需要饼干?另外,就像我在OP中所说的那样,我已经在浏览器中尝试了URI,该浏览器没有该域的现有cookie,并且URI工作正常。 – awj

+0

不,我的意思是你可以发送用户名和密码与这些类。您的浏览器可能缓存了它们。尝试它们会缩短你的评论。 –

回答

0

对于任何人看这个问题的答案,请参阅上文@ L.B.的评论。

相关问题