在这个javascript中我在一个下拉框中加载了SharePoint列表"XYZ"的所有项ID . 我已从列表权限中删除了用户"Manoj",但它在我使用内容编辑器放置此javascript的页面上具有权限 . 现在,当我使用站点管理员访问此页面时,我可以在下拉列表中看到列表项ID,但是当我移动下一个用户"Manoj"时,他没有列表的权限但是在页面上比它给我的消息如 "Access denied. You do not have permission to perform this action or access this resource."
所以我的问题是我们可以在Web部件页面中加载列表数据,其中用户没有列表权限但在页面上拥有完全权限吗?我问这个问题,因为如果用户只想使用网页部分页面添加或编辑数据,我不会授予用户查看列表和执行操作的权限 .
如果没有,那么有没有其他方式:使用javascript更改页面加载用户 .
下面是我使用的javascript rest api
<script type="text/javascript">
$( window ).load(function() {
DisplayItem();
});
function DisplayItem(){
var requestUri = 'http://abc/pharma/Zdus/RnD/_api/Web/Lists/getByTitle(\'XYZ\')/items'
var requestHeaders = {
'accept': 'application/json;odata=verbose'
};
$.ajax({
url: requestUri,
dataType: "json",
type: 'GET',
headers: requestHeaders,
success: function(json) {
var len= (json.d.results.length);
var x=document.getElementById("myList");
for (var i=0;i<len;i++)
{
var nid=(json.d.results[i].ID);
x.options[x.options.length] = new Option(nid, nid);
}
},
error: function(error){
alert(error.responseText);
}
});
}
</Script>
<div>
<label>Total Items</label>
<select id="myList" >
<option value=''></option>
</select>
任何帮助高度赞赏 . 不是:这与Site Admin和拥有列表权限的用户一起正常工作
1 回答
如果用户没有该列表的权限,您可以从Sharepoint加载或获取数据 .
要从Sharepoint Atleast获取数据,需要读取权限 . 您只能向用户提供读取权限 .