当仅知道文档 ID 时,如何从 Sharepoint API 检索文档?

Posted

技术标签:

【中文标题】当仅知道文档 ID 时,如何从 Sharepoint API 检索文档?【英文标题】:How to retrieve a document from Sharepoint API when only the document id is known? 【发布时间】:2021-04-10 06:33:11 【问题描述】:

我正在使用 Sharepoint v1.0 API 并希望通过文件 ID 检索文件。我找不到任何有关如何以这种方式检索文件的文档。如果我使用网址:

https://xxxxxxxx.sharepoint.com/sites/xxxxxxx/_layouts/15/DocIdRedir.aspx?ID=MLVDK4UWQQ8B-763006743-3089

响应是 401,因此无法直接调用。我可以查询 API,但我不知道如何将上述 URL 转换为我可以与该 API 一起使用的 URL。 URL 应该是这样的:

https://xxxxxxxx.sharepoint.com/sites/xxxxxxx/_api/

使用 API 检索文档的正确方法是什么?我试过了:

https://xxxxxxxx.sharepoint.com/sites/xxxxxxx/_api/search/query?refinementfilters=DlcDocId:equals("MLVDK4UWQQ8B-763006743-3089") https://xxxxxxxx.sharepoint.com/sites/xxxxxxx/_api/search/query?DlcDocId='MLVDK4UWQQ8B-763006743-3089' https://xxxxxxxx.sharepoint.com/sites/xxxxxxx/_api/Web/GetFolderByServerRelativeUrl('Shared 文件')/文件 https://xxxxxxxx.sharepoint.com/sites/xxxxxxx/_api/Web/GetFileByServerRelativeUrl('_layouts/15/DocIdRedir.aspx?ID=MLVDK4UWQQ8B-763006743-3089')/Versions

【问题讨论】:

【参考方案1】:

尝试在搜索rest api中使用DocId=MLVDK4UWQQ8B-763006743-3089:

https://xxxxxxxx.sharepoint.com/sites/xxxxxxx/_api/search/query?querytext='DocId=MLVDK4UWQQ8B-763006743-3089'

参考:

Search By Document ID In SharePoint 2013

【讨论】:

【参考方案2】:

我知道这不是您可能正在寻找的官方 API 端点,但如果您想下载带有 SharePoint url 的文档,您可以尝试使用 download.aspx 之类的 https://xxxxxxx.sharepoint.com/sites/xxxxx/_layouts/15/download.aspx?UniqueId=MLVDK4UWQQ8B-763006743-3089

希望对你有帮助

【讨论】:

以上是关于当仅知道文档 ID 时,如何从 Sharepoint API 检索文档?的主要内容,如果未能解决你的问题,请参考以下文章

从 Google 电子表格中获取 ID 或 URL

当仅请求 COARSE_LOCATION 时,Android 是不是仍会使用 GPS 来获取位置?

如何在快速点击 Firestore 中的 uitablecellviewcell 时获取文档 ID

如何从 BIM 360 问题有效负载中检索链接的文档?

powershell SharePoint Powershell在SharePoint模式下测试Analysis服务。这用于解决SharePoin中的Analysis服务问题

如何按文档 ID 从 Firebase Firestore 获取数据 - iOS?