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

我想更新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}')`; 

以上是 如何使用SharePoint_api执行更新/合并/修补程序到SharePoint列表 的全部内容, 来源链接: utcz.com/qa/262086.html

回到顶部