• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

如何使用SharePoint_api执行更新/合并/修补程序到SharePoint列表

jquery 来源:AllramEst 4次浏览

我想更新SharePoint列表。我阅读标题必须包括"X-HTTP-Method": "MERGE"和类型应为POST。我不知道是否需要"IF-MATCH": "*"有一个etag或不。当我删除一个项目"IF-MATCH": "*"不需要有一个etag。这里是我的代码:如何使用SharePoint_api执行更新/合并/修补程序到SharePoint列表

function UpdateBooking(ajaxData) { 
    var url = `${_spPageContextInfo.webAbsoluteUrl}/_api/web/lists/getbytitle('Bokningar')/items`; 
    //requestHeaders 
    var requestHeaders = { 
    "accept": "application/json;odata=verbose", 
    "content-type": "application/json;odata=verbose", 
    "X-HTTP-Method": "MERGE", 
    "IF-MATCH": "*", 
    "X-RequestDigest": jQuery('#__REQUESTDIGEST').val() 
    } 

    //Data 
    var data = { 
    __metadata: { 
     "type": "SP.Data.BokningarListItem" 
    }, 
    Title: ajaxData.Title, 
    EventDate: ajaxData.EventDate, 
    EndDate: ajaxData.EndDate, 
    Description: ajaxData.Description, 
    IsBlock: ajaxData.IsBlock, 
    Milj_x00f6_: ajaxData.Milj_x00f6_, 
    Program: ajaxData.Program 
    }; 

    //requestBod 
    var requestBody = JSON.stringify(data); 

    //Post 
    var post = jQuery.ajax({ 
    url: url, 
    type: "POST", 
    headers: requestHeaders, 
    data: requestBody 
    }); 

    //Done 
    post.done(function(data, textStatus, jqXHR) {}); 
    //Fail 
    post.fail(function(jqXHR, textStatus, errorThrown) {}); 
} 

这是错误我得到:

{"error":{"code":"-1, Microsoft.SharePoint.Client.InvalidClientQueryException","message":{"lang":"en-US","value":"The type SP.ListItemEntityCollection does not support HTTP PATCH method."}}} 

任何想法我做错了吗?

===========解决方案如下:

解决了它。我没有提供URL中的ID。

var url = `${_spPageContextInfo.webAbsoluteUrl}/_api/web/lists/getbytitle('Bokningar')/items('${id}')`; 

版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)