Jquery Sharepoint REST API调用状态403禁止

Jquery Sharepoint REST API调用状态403禁止,jquery,rest,sharepoint,Jquery,Rest,Sharepoint,我需要通过RESTAPI更新或创建Sharepoint列表中的新对象。我创建新项目或编辑现有项目的REST调用返回状态403:禁止,原因我不清楚。用户拥有编辑和读取列表所需的所有访问权限。我如何继续并让这些剩余通话通过 //update current item $.ajax({ url: "/sitename/_api/web/Lists/getbytitle('metricList')/items(" + results[i].Id + ")", type: "POST",

我需要通过RESTAPI更新或创建Sharepoint列表中的新对象。我创建新项目或编辑现有项目的REST调用返回状态403:禁止,原因我不清楚。用户拥有编辑和读取列表所需的所有访问权限。我如何继续并让这些剩余通话通过

//update current item
$.ajax({
    url: "/sitename/_api/web/Lists/getbytitle('metricList')/items(" + results[i].Id + ")",
    type: "POST",
    data: JSON.stringify({
        '__metadata': {
            'type': 'SP.Data.iconMetricsListItem'
        },
        'numClicks': temp
    }),
    headers: {
        "IF-MATCH": "*",
        "X-HTTP-Method":"MERGE",
        "accept": "application/json;odata=verbose",
        "content-type": "application/json;odata=verbose",
        "X-RequestDigest": $("#__REQUESTDIGEST").val()
    }
});


//create new item
$.ajax({
    url:"/sitename/_api/web/Lists/getbytitle('metricList')/items",
    type: "POST",
    contentType: "application/json;odata=verbose",
    data: JSON.stringify(item),
    headers: {
        "Accept": "application/json;odata=verbose",
        "X-RequestDigest": $("#__REQUESTDIGEST").val()
    },
    success: function (data) {
    },
    error: function (data) {
    }
});

我看不到您的授权标题。如果未将其作为请求的一部分发送,则即使您有有效的请求摘要标头,您也将始终获得403状态代码。

这是否与sharepoint在同一服务器上运行?如果不是,它被认为是跨域的,您需要确保它被相应地设置。有时,将“callback=?”添加到URL中非常简单。此函数将由具有适当权限的用户从Sharepoint页面触发。这需要跨域调用吗?我以前从未使用过跨域调用,但我以前只读过REST,从未写过基于您的评论,它不应该是跨域的。您的代码在我看来是正确的,所以我不确定发生了什么。这几乎是逐字逐句的我所用的没有任何问题。