Каков правильный синтаксис запроса AJAX POST к сообщению в блоге sharepoint? - PullRequest
0 голосов
/ 06 апреля 2020

Я работаю над «новостным потоком» статей для читателей, которые должны отображаться в виде веб-части на домашней странице сайта sharepoint. Для этого я обращаюсь к списку сообщений в блоге, чтобы вернуть отображаемые данные, и я пытаюсь получить кликабельную ссылку, которая позволяет пользователю отправлять свои «лайки» обратно в виде действия POST без необходимости открывать новое окно. с самим постом. У меня есть следующий код, который возвращает сообщение об ошибке «HTTP400: BAD REQUEST - запрос не может быть обработан сервером из-за неправильного синтаксиса. (XHR) POST - URL / _api / web / lists / getbytitle ('Posts') ) / items (2) '

Обратите внимание, что первоначальный вызов AJAX для получения информации работает без проблем. Мне интересно, является ли это «истинным», который я пытаюсь отправить, однако я не уверен, какой правильный синтаксис для отправки данных «пользователю нравится этот пост».

var filResponse = [ ];
var listTitle = "Posts";
var itemId = "";
var webUrl = "_spPageContextInfo.webServerRelativeUrl";

function getToRead() {
  $.ajax({
  url: "_spPageContextInfo.webServerRelativeUrl/_api/web/lists/getbytitle('Posts')/items?$select=ID,Title,Body,Brands_x0020_impacted,PublishedDate,Best_x0020_before,hide_x0020_after,LikesCount,LikedBy/Title&$expand=LikedBy",
  type: "GET",
  headers: {"accept": "application/json;odata=verbose"},
  success: function(data) {
   filResponse = data.d.results;
   filResponse.reverse();
   for (var obj in filResponse){
    var likedBy = "blank";
    if(filResponse[obj].LikedBy.results){
     likedBy = JSON.stringify(filResponse[obj].LikedBy.results);
    }
    if (likedBy.includes(loginName)){
    } else {
     itemId = filResponse[obj].ID;
     document.getElementById("results").innerHTML += "<strong>" + filResponse[obj].Title + "</strong><br>" + filResponse[obj].Body + "<p id='like' onclick='Reputation.setLike(webUrl, listTitle, itemId, true)'>I have read and understood this article</p><br>";
    }
   }
  }
 });
}

Reputation.setLike(webUrl, listTitle, itemId, true)
    .done(function (item) {
        console.log('Liked');
    })
    .fail(function (error) {
        console.log(JSON.stringify(error));
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...