以编程方式从基于声明身份验证的SharePoint 2010网站下载文件

ash*_*rya 1 c# asp.net adfs claims-based-identity wif

我有一个控制台应用程序从SharePoint站点下载文件.sharepoint站点使用基于声明的身份验证.

此代码抛出403 Forbidden异常.指定的网络凭据具有对站点的完全访问权限,并且能够从浏览器下载相同的文件.

WebClient webClient = new WebClient();
webClient.Credentials = new NetworkCredential(username,Password,domain);
byte[] fileData = webClient.DownloadData(urlOfAFile); 
FileStream file = File.Create(localPath);
file.Write(fileData, 0, fileData.Length);
Run Code Online (Sandbox Code Playgroud)

知道如何解决这个问题吗?

Mel*_*ats 8

也许有点晚了,但在提出请求之前添加正确的请求标头可以解决问题:

webClient.Headers.Add("X-FORMS_BASED_AUTH_ACCEPTED", "f");
Run Code Online (Sandbox Code Playgroud)