正在从2阶段身份验证保护的服务器下载文件
本文关键字:保护 服务器 下载 文件 身份验证 | 更新日期: 2023-09-27 18:29:20
我必须从一个服务器下载一些文件,该服务器对我正在尝试开发的PowerPoint加载项具有两阶段身份验证。
首先,我通过浏览器登录到工作区。。。
在那个浏览器中,我可以调用一个.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文件?
有人能帮忙吗?
感谢
发布一个我称之为"正在进行中"的答案可以吗?
我在推特上认识一个真正了解自己的人。
不是一个亲密的朋友,而是一个我追随了很长时间的人。他写了《小提琴手》。
所以,我伸出脖子问他。
这就是他说的。
"使用Fiddler观察每个场景的流量。PPT是否发送Cookie、Auth标头或用户代理,您的代码需要发送?"
"WebClient不是基于WinINET/URLMon的。PowerPoint下载(通常)是,这意味着它会获得cookie、UA字符串等。"
"PowerPoint具有从URLMon/WinINET继承的cookie和自动身份验证行为。"
如果我理解正确的话,这就解释了为什么PowerPoint可以下载文件。。
我想。
更新:
我最终实现了这个:
是否可以将身份验证从Webbrowser转移到WebRequest
HTH