【问题标题】:Download Document from SharePoint Online using c# webclient stopped working使用 c# webclient 从 SharePoint Online 下载文档停止工作
【发布时间】:2020-12-17 04:01:59
【问题描述】:

使用 c# webclient 从 SharePoint Online 下载文档停止工作!

多年来,我一直使用此代码从 SharePoint Online 下载文档。自 5 月 8 日以来,我收到 401 错误。

WebClient webClient = new WebClient();
webClient.Headers.Add("X-FORMS_BASED_AUTH_ACCEPTED", "f");

SecureString securePassWord = new SecureString();
foreach (char c in password.ToCharArray()) securePassWord (c);
WebClient.Credentials = new SharePointOnlineCredentials(username, securePassWord);

byte[] fileBinary = webClient.DownloadData(fileUrl);

它应该还在工作吗?

提前非常感谢

【问题讨论】:

  • 你好@M.Rob,恐怕你需要包含比这更多的信息。 sharepoint 的版本是否已更改,如果是,它是什么,现在是什么?是否向共享点实例添加了一些新的身份验证?您最近使用的凭据是否已更改?所有这些答案以及您拥有的任何其他信息对于获得可以解决您的问题的答案至关重要。
  • @ElliotBlackburn 感谢您的回复!完全没有变化。请注意,我们使用的是 SharePoint Online (Office 365)
  • SharePoint Online 由 Microsoft 托管、管理和更新。我的猜测是他们对您尝试访问的端点的身份验证进行了更改。因此,您的代码现在已经过时了。 fileUrl 的值是什么,然后您可以查找有关任何身份验证更改的补丁说明。

标签: sharepoint-online webdav


【解决方案1】:

我在这里详细回答了。请检查。 诀窍是获取 cookie 并作为标头传递。 https://saratchandra.net/2015/08/18/is-it-that-difficult-to-read-a-file-from-sharepoint-site/

【讨论】:

    【解决方案2】:

    我认为这是为了:

    securePassWord.AppendChar(c); 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-01
      • 2012-12-21
      相关资源
      最近更新 更多