Sharepoint Rest API breakRoleInheritance资料夹

时间:2018-07-25 14:04:11

标签: rest api sharepoint

我已经在Docset文件夹中创建了一个Doc-set。我喜欢破坏文件夹上的角色继承。我是SharePoint Rest-API的新手,找不到正确的终结点。我可以为此使用/ breakroleinheritance(true)吗?

我的一项测试:

function breakRoleInheritanceOfFolder() {
    $.ajax({
      url: siteUrl 
         + "/_api/web/getfolderbyserverrelativeurl(‘List1/DocSet2/Folder3’)''
         +”/breakroleinheritance(true)",             
     type: 'POST',
     headers: { 'X-RequestDigest':$('#__REQUESTDIGEST').val() },  
     success: successHandler,
     error: errorHandler
    });
}

但是它不起作用。 我们使用Sharepoint 2016内部部署。

1 个答案:

答案 0 :(得分:2)

以下代码供您参考。

<script type="text/javascript" src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<script type="text/javascript">
$(function () {
    breakRoleInheritanceOfFolder("List1/DocSet2/Folder3");
});
function breakRoleInheritanceOfFolder(folderRelativeUrl){
    // begin work to call across network
    var requestUri = _spPageContextInfo.webAbsoluteUrl +
                  "/_api/web/GetFolderByServerRelativeUrl('"+folderRelativeUrl+"')/ListItemAllFields/breakroleinheritance(true)";

    // execute AJAX request
    $.ajax({
        url: requestUri,
        type: "POST",
        contentType: "application/json;odata=verbose",
        headers: {
            "Accept": "application/json;odata=verbose",
            "X-RequestDigest": $("#__REQUESTDIGEST").val()
        },
        success: function (data) {                 
            alert("succeeded");
        },
        error: function () {
            alert("Failed to get details");
        }
    });
}
</script>