javascript – 如何使用REST for Sharepoint 2013删除项目

前端之家收集整理的这篇文章主要介绍了javascript – 如何使用REST for Sharepoint 2013删除项目前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在创建一个Sharepoint应用程序,我只能使用Javascript(包含jQuery)和REST端点.我想使用网络应用程序从主机删除一个项目,但我收到一个错误(403:FORBIDDEN).这是我到目前为止的代码

  1. executor = new SP.RequestExecutor(appweburl);
  2. executor.executeAsync({
  3. url: appweburl + "/_api/SP.AppContextSite(@target)/web/lists/getbytitle('" + currentListTitle + "')/items(" + result.Id + ")/?@target='" + hostweburl + "'",method: "POST",headers: {
  4. "accept": "application/json","X-RequestDigest": ?????
  5. "IF-MATCH": "*","X-HTTP-Method": "DELETE"
  6. },success: onDeleteItemSuccess,error: onDeleteItemFail
  7. });

现在我发现这个X-RequestDigest是强制性的,我发现了一些调用来从REST获取这个:

  1. $.ajax({
  2. url: appweburl + "/_api/SP.AppContextSite(@target)/contextinfo/?@target='" + hostweburl + "'",type: "POST",contentType: "application/x-www-url-encoded",dataType: "json",success: function (data) {
  3. if (data.d)
  4. {
  5. digestValue = data.d.GetContextWebInformation.FormDigestValue;
  6. alert(digestValue);
  7. }
  8. },error: function (xhr) {
  9. alert(xhr.status + ': ' + xhr.statusText);
  10. }
  11. });

但它根本不起作用(这可能是因为此代码适用于Sharepoint 2010)并且它将继续给我403:FORBIDDEN消息.

有谁知道如何使用REST从其中一个列表中删除列表项(我不能使用/编辑javascript之外的任何代码!)?

任何帮助都是适当的,如果您需要任何信息,请不要犹豫.

最佳答案
代码不适用于SharePoint 2010,因为_api是SP 2013的新增功能.

[更新]也许您的意思是您的代码在SP 2013预览中有效?在SP2013 RTM中,您需要使用:

  1. "Accept": "application/json; odata=verbose"

猜你在找的JavaScript相关文章