我想使用 Sharepoint REST API 编辑 Sharepoint 网站的 WebPart。到目前为止,我发现的最佳选择是首先使用 GetLimitedWebPartManager 方法来请求站点的所有 WebPart。目前,我正在与 MS PowerAutomate 合作设计此工作流程,因此我请求以 JSON 格式获取 API 调用的所有结果。
我找到了应该执行此操作的命令:
https://[domain].sharepoint.com/sites/[dev]/_api/web/getFileByServerRelativeUrl('/sites/Example.aspx')/getLimitedWebPartManager(scope=1)/WebParts?$expand=WebPart/Properties
不幸的是,响应如下(即使该网站不为空并且有 3 个 WebPart):
{
"d": {
"results": []
}
}
还尝试了类似以下命令的操作,但我认为我仍然缺少一些东西。
https://[domain].sharepoint.com/sites/[dev]/_api/web/getFileByServerRelativeUrl('/sites/Example.aspx')/getLimitedWebPartManager()/WebParts?$expand=WebPart
https://[domain].sharepoint.com/sites/[dev]/_api/web/getFileByServerRelativeUrl('/sites/Example.aspx')/getLimitedWebPartManager()/WebParts?$select=*&$expand=WebPart
有人知道什么可能导致空结果吗?
我建议查看 Graph API 的 Pages API。
它相当新,但它应该支持创建和更新 Web 部件: https://learn.microsoft.com/en-gb/graph/api/resources/webpart?view=graph-rest-1.0