如何使用POSTMAN或Graph Explorer获取SharePoint页面及页面内容
前置要求
- 你需要拥有目标SharePoint站点的访问权限
- 调用接口需要
Sites.Read.All或更高权限的授权
操作通用流程
1. 获取目标站点ID
调用GET接口:https://graph.microsoft.com/v1.0/sites/{租户域名}.sharepoint.com:/sites/{站点相对路径}
返回结果中的id字段即为站点ID,替换后续所有请求的{site-id}占位符使用。
示例:如果你的站点访问地址是
https://contoso.sharepoint.com/sites/team01,对应请求地址就是https://graph.microsoft.com/v1.0/sites/contoso.sharepoint.com:/sites/team01
2. 获取站点下所有文档库/页面库
调用GET接口筛选需要的库:https://graph.microsoft.com/v1.0/sites/{site-id}/lists?$filter=baseTemplate eq 119baseTemplate eq 119代表只筛选页面库,去掉筛选条件可返回站点下所有列表和库,返回结果中每个库的id即为库ID,替换后续请求的{list-id}占位符使用。
3. 获取指定库下的所有页面基础信息
调用GET接口:https://graph.microsoft.com/v1.0/sites/{site-id}/lists/{list-id}/items?$expand=fields
返回结果中包含库内所有页面的标题、文件名、创建时间、修改人等基础字段,每个页面项的id即为页面ID,替换后续请求的{page-id}占位符使用。
4. 获取单页完整内容
- 现代页面内容(结构化布局):调用GET接口
https://graph.microsoft.com/v1.0/sites/{site-id}/pages/{page-id}/microsoft.graph.sitePage?$expand=canvasLayout
返回结果的canvasLayout字段包含页面所有分区、Web部件的完整内容结构。 - 经典页面/原始文件内容:调用GET接口
https://graph.microsoft.com/v1.0/sites/{site-id}/items/{page-id}/driveItem/content
直接返回aspx页面文件的原始内容流。
Graph Explorer 操作步骤
- 打开Graph Explorer后登录你的工作/学校账号
- 进入权限面板,找到
Sites.Read.All权限点击同意授权 - 按上述流程依次替换请求地址中的占位符,选择GET方法后点击发送即可
- 响应结果直接在下方面板展示,支持导出为JSON格式保存
Postman 操作步骤
- 首先获取访问令牌:新建OAuth 2.0授权,令牌地址填
https://login.microsoftonline.com/{租户ID}/oauth2/v2.0/token,填写你在Azure AD注册应用的客户端ID、客户端密钥,范围填https://graph.microsoft.com/.default,获取令牌后应用到请求 - 所有接口请求的Authorization头统一设置为
Bearer {你获取到的令牌} - 按上述流程填写对应GET请求地址,发送后即可在响应面板查看返回结果
- 如需批量拉取,可编写集合自动化脚本遍历所有库、所有页面的ID批量请求
小技巧:如果只需要默认站点页面库的内容,可跳过查库的步骤,直接把
{list-id}替换为Site Pages即可,对应请求地址为https://graph.microsoft.com/v1.0/sites/{site-id}/lists/Site Pages/items
内容的提问来源于stack exchange,提问作者Deep Ponkiya

