gpt4 book ai didi

SharePoint 使用 SharePoint Online REST API 获取所有网站和所有子网站

转载 作者:行者123 更新时间:2023-12-02 20:20:10 24 4
gpt4 key购买 nike

对于 SharePoint Online 连接器,我们使用以下步骤来获取所有网站:

第 1 步:使用以下权限 xml 在 SharePoint 实例上创建加载项

<AppPermissionRequests>
<AppPermissionRequest Scope="http://sharepoint/content/tenant" Right="FullControl"/>
<AppPermissionRequest Scope="http://sharepoint/content/sitecollection" Right="Read"/>
</AppPermissionRequests>

第 2 步:使用以下 API 获取所有网站和子网站

https://<site_name>.sharepoint.com/_api/search/query?querytext='contentclass:STS_Site' &rowlimit=100

我们面临的问题

  1. 以上端点正在返回所有站点、子站点以及用户的
    个人网站(一个驱动器)
    ,而我们需要所有网站和子网站仅此而已。
  2. 请建议读取所有网站、所有子网站、所有文件夹和文件元数据所需的最低权限

我们引用了以下链接:

最佳答案

Joel Dsouza 的一个方法供您引用。

1.第一个Ajax是获取根站点标题和相对URL。

$.ajax({
url: _spPageContextInfo.siteAbsoluteUrl + "/_api/site/rootweb?$select=Title,ServerRelativeUrl",
method: "GET",
headers: {
"Accept": "application/json; odata=verbose"
},
success: function(rootsite) {

},
error: function(rootsite) {},
async: false
});

2.第二个AJAX是获取根站点下的所有子站点。

$.ajax({
url: _spPageContextInfo.siteAbsoluteUrl + "/_api/web/webinfos?$select=ServerRelativeUrl,Title",
method: "GET",
headers: {
"Accept": "application/json; odata=verbose"
},
success: function(subsites) {
$.each(subsites.d.results, function() {
getSubSites(this.ServerRelativeUrl, this.Title);
});

},
error: function(subsites) {},
async: false
});

3.这是一个递归函数,用于循环子站点并检查更多子站点。

function getSubSites(SubSiteUrl, SubSiteTitle) {
console.log(SubSiteUrl);
$.ajax({
url: _spPageContextInfo.siteAbsoluteUrl + SubSiteUrl + "/_api/web/webinfos?$select=ServerRelativeUrl,Title",
method: "GET",
headers: {
"Accept": "application/json; odata=verbose"
},
success: function(subsites) {

$.each(subsites.d.results, function(index) {
getSubSites(this.ServerRelativeUrl, this.Title);
});
},
error: function(subsites) {},
async: false
});
}

更多信息:Get All Sites and Sub Sites using REST API

关于SharePoint 使用 SharePoint Online REST API 获取所有网站和所有子网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51616560/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com