2014-11-06 72 views
0

我想从一个服务器上下载一些文件,该服务器有一个用于PowerPoint Addin的2阶段验证,我正在尝试开发。从2级验证受保护的服务器下载文件

首先,我登录到工作区通过浏览器...

在该浏览器我可以调用一个.txt文件和内容被显示在浏览器 - 伟大的!

在我的PowerPoint外接程序然后我有以下代码下载一个PP文件并打开它...

Globals.ThisAddIn.Application.Presentations.Open(@"https://workspace2.blahblah.com/group/corenarratives/Shared%20Documents/corenarratives/BlankPresentationTemplate.pptx"); 

此下载PPTX文件并打开它完美!太好了!

然后我尝试下载一个.txt文件与此代码:

WebClient wc = new WebClient(); 
wc.DownloadFile("https://workspace2.blahblah.com/group/corenarratives/Shared%20Documents/corenarratives/rts.txt", @"C:\trev\trev.txt"); 

和文件的内容包含了HTML错误页面...

当我保存.txt文件作为一个.html文件,并在浏览器中打开它将我重定向到工作区登录页面...

我不明白为什么PowerPoint文件打开和.txt文件不?

而且,如果可能的话,如何下载.txt文件?

任何人都可以帮忙吗?

谢谢

+0

“包含HTML错误页面”:什么是错误页面说呢? – 2014-11-06 14:34:40

+0

一个页面说我将被重定向...当我在浏览器中打开它时,它会将我重定向到工作区登录页面 – 2014-11-06 14:36:54

+0

因此,您尚未登录(只要服务器知道)。可能它期望一个包含请求的登录cookie。 – 2014-11-06 14:40:15

回答

0

可以发表一个答案我会形容为“进行中”?

我知道我叽叽喳喳谁真正知道他的东西的家伙。

不是很好的朋友,而是我一直关注很久的人。他写了小提琴手。

所以,我伸出脖子问他。

这就是他说的。

“使用Fiddler观看每个场景的流量.PPT是否发送代码需要发送的Cookie,Auth头或用户代理?

“WebClient不是基于WinINET/URLMon。PowerPoint下载(经常)是,这意味着它获取cookie,UA字符串等。”

“PowerPoint具有从URLMon/WinINET继承的Cookie和自动身份验证行为。”

其中,如果我理解正确的话,解释了为什么PowerPoint可以下载一个文件..

我想。

更新:

最后我实现这个:

Is it possible to transfer authentication from Webbrowser to WebRequest

HTH