我正在尝试从OneDrive for Business的“与我共享”文件夹中显示的共享文件夹中下载文件。我正在使用以下REST调用来获取文件夹名称及其中显示的文件:
https:// {tenant} -my.sharepoint.com/_api/search/query?querytext='(SharedWithUsersOWSUSER:{UserAccountName} AND contentclass:STS_ListItem_MySiteDocumentLibrary)
和
的https:// {房客} -my.sharepoint.com/_api/search/query?querytext= '(ParentLink:{parentlink})'
没有问题。从这些调用提供的元数据中,我获取每个目录中的文件,并尝试使用以下GET请求调用下载它们(请注意,“user1”是下载文件的人,“user2”是共享文件的人):
的https:// {租户} -my.sharepoint.com/personal/user1_mydomain_com/_api/Web/GetFileByServerRelativeUrl( '/personal/user2_mydomain_com/Documents/test/test1.docx')/ $值
或
的https:// {租户} -my.sharepoint.com/_api/v1.0/user2_mydomain_com/files/ {FILEID}
我还尝试使用新的v2.0调用,但它们似乎还不支持“与我共享”文件夹/文件访问。
在我的所有尝试中,尝试下载共享文件时出现“错误请求”或“未找到”错误。使用以下REST调用下载我自己的OneDrive for Business文件没有问题:
https:// {tenant} -my.sharepoint.com/personal/user_mydomain_com/_api/Web/GetFileByServerRelativeUrl('/ personal / user_mydomain_com / Documents / User Folder / Test.htm')/ $ value
我正在使用的电话来自:
https://msdn.microsoft.com/office/office365/APi/files-rest-operations(v1.0来电)
https://dev.onedrive.com/README.htm(v2.0来电)
任何建议都将不胜感激。谢谢!