从SharePoint下载文件

克里斯蒂森

我正在使用SharePoint的REST API查询公司用户的Office 365 SharePoint网站内托管的文件。

我已经使用OAuth对用户进行身份验证并授权了该应用,如下所述:http : //msdn.microsoft.com/zh-cn/library/azure/dn645542.aspx

我可以通过以下网址上的GET请求成功查询API:https//XXXXXXX.sharepoint.com/sites/xxxxx/xxxxx/myfoldername/_api/files(作为您将标头设置为“ Bearer”的授权标头的请求)会期望的。)

上面的查询为我提供了以下JSON结果:

{
    "odata.metadata" = "https://xxxxxxxxx.sharepoint.com/sites/xxxxxxxxx/xxxxxxxxx/myfoldername/_api/$metadata#SP.ApiData.Files";
    value =     ( 
                {
            CreatedBy =             {
                Id = 1;
                Name = “Test”;
                Puid = xxxxx;
            };
            ETag = “\”{hsdglksjfldkasnfldasknk},4\””;
            Id = JKLBbiuuu908yYHhh89YBn9n9ynynYUN;
            LastModifiedBy =             {
                Id = 1;
                Name = “XXXXX”;
                Puid = XXXXXXXXXXX;
            };
            Name = "videofile.wmv";
            Size = 56492358;
            TimeCreated = "2013-09-23T05:16:44Z";
            TimeLastModified = "2013-09-23T05:28:42Z";
            Url = "https://xxxxxxxxx.sharepoint.com/sites/xxxxxxxxx/xxxxxxxxx/myfoldername/Shared Documents/videofile.wmv";
            "odata.editLink" = "Web/Lists(guid’9568472598-2c28-489BF2-a1ae-kfjdasfkjb)/files(‘jkbvasdjfbakfndasnMNBBAMnsaldfan)”;
            "odata.id" = "https://xxxxxxxxx.sharepoint.com/sites/xxxxxxxxx/xxxxxxxxx/myfoldername/_api/Web/Lists(guid’987795-gfkjhghs-ty42398yhfo’)/files('jkbvasdjfbakfndasnMNBBAMnsaldfan')";
            "odata.type" = "MS.FileServices.File";
        })
}

(请记住,上面的内容实际上不是JSON,而是从JSON解析器输出的文本)

在上面的结果中,我在value零件内部得到了一个文件数组为了说明起见,我将此数组缩减为一个项目。

您将看到每个项目代表一个文件的元数据。有一个财产叫Url然后,我用它来尝试下载文件。我创建了一个HTTP请求,在Authorization标头后添加Bearer <access_token>,但是响应始终是HTTP 401 UNAUTHORIZED

请注意:我正在编写的软件实际上是使用AFNetworking 2的在Objective-C中的AFHTTPRequestOperationManager

有人知道我实际上可以下载该文件吗?我在文档中看到了对某些名为“ contentUrl”的属性的引用,但未提供此属性。

谢谢克里斯

食堂

您是否正在使用API​​的v1?从您的端点看来,您似乎正在使用预览(v1已于2周前发布;我们的文档页面上可能仍然有过时的参考,如果您遇到任何问题,请告知我们)

例子:

GET https:// {tenant} .sharepoint.com / {site-path} /_api/v1.0/Files/ {file-id} / content

这是文档部分的URL,向您显示如何下载文件:http : //msdn.microsoft.com/zh-cn/office/office365/api/files-rest-operations#FileresourceDownloadafile

让我知道您是否还有其他问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章