У меня есть список SharePoint под названием «Результаты поиска». В списке есть поле «Пользователи», для которого я пытаюсь установить значение «Тест» для определенного идентификатора записи.
$(window).load(function(){
try{
var item = {
"__metadata": { "type": "SP.Data.SearchResultsListItem" },
"Users": "Test"
};
$.ajax({
url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/lists/getbytitle('Search Results')/items(174)",
type: "POST",
contentType: "application/json;odata=verbose",
data: JSON.stringify(item),
headers: {
"Accept": "application/json;odata=verbose",
"IF-MATCH": "*",
"X-HTTP-Method": "MERGE",
"X-RequestDigest": $("#__REQUESTDIGEST").val()
},
success: function (data) {
alert('Field was updated!');
},
error: function(jqXHR, exception) {
alert(jqXHR.status);
}
});
}
catch(err){
alert(err);
}
});
Я получаю код ошибки 400.
В консоли Chrome я получаю сообщение «Не удалось загрузить ресурс: сервер ответил со статусом 400 (неверный запрос)», а затем ссылку.
Когда я нажимаю на ссылку, я вижу запись в SharePoint на своем экране. Я вижу свое поле «Пользователи».
Любые предложения о том, что я делаю неправильно или как приступить к устранению неполадок?
Заранее спасибо.
Если в названии списка «Результаты поиска» есть место, введите его следующим образом:
var item = {
"__metadata": { "type": "SP.Data.Search_x0020_ResultsListItem" },
"Users": "Test"
};
Сначала попробуйте запустить этот URL-адрес в браузере и проверьте, возвращаются ли результаты. Тогда займись остальным.
www.WebsiteURL.com/_api/web/lists/getbytitle('Результаты поиска')/items(174)
Если его возвращаемые результаты находят значение метадаты из этого и также проверяют значение метаданных.
Спасибо, Jerry_MSFT!!