如何通过SharePoint REST API用单个URL获取任意文档版本(含当前)
解决方案
你可以直接使用SharePoint REST API的OpenBinaryStream方法,它支持传入版本ID参数,能统一处理当前版本和历史版本的文件下载,无需额外请求判断版本状态。
具体请求格式
<host,site>/GetFileByServerRelativeUrl('<file-relative-url>')/OpenBinaryStream(versionId=<your-version-id>)
这个方法的核心特性:
- 当传入的版本ID是当前版本时,会直接返回当前文件的二进制内容,不会出现
null的情况 - 当传入的版本ID是历史版本时,会返回对应历史版本的文件内容
- 全程只需单个请求,完全避免了额外调用服务器检查版本是否为当前的性能损耗
说明
这个端点适用于SharePoint Online以及SharePoint Server 2016及之后的本地部署版本,是官方原生支持的API方法,无需依赖任何非标准扩展。
内容的提问来源于stack exchange,提问作者user20944410
相关产品推荐
相关产品推荐

