【发布时间】:2014-05-30 19:07:06
【问题描述】:
在此 javascript 中,我在下拉框中加载了 SharePoint 列表“XYZ”的所有项目 ID。 我已从列表权限中删除了用户“Manoj”,但它在我使用内容编辑器放置此 javascript 的页面上具有权限。 现在,当我使用站点管理员访问此页面时,我可以在下拉列表中看到列表项 ID,但是当我继续下一个用户“Manoj”时,该用户没有列表权限但在页面上比它给我的消息像 “拒绝访问。您无权执行此操作或访问此资源。”
所以我的问题是我们可以在用户在列表中没有权限但对页面具有完全权限的 Web 部件页面中加载列表数据吗?我问这个问题是因为如果用户只想使用 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>
高度赞赏任何帮助。 不:这适用于站点管理员和具有列表权限的用户
【问题讨论】:
标签: javascript rest sharepoint sharepoint-2013