Решил по лучше узнать REST (т.к. от CSOM рекомендуют уходить
постепенно), но возникли некоторые сложности, т.к. присутствует локализация SharePoint (установлен
языковой пакет) и выглядит вот так:
При обращении к элементу списка Employees
получаем отображаемые названия полей
через JavaScript (предварительно подключив jQuery)
_spBodyOnLoadFunctionNames.push("getEmployees"); function getEmployees() { $.getJSON(_spPageContextInfo.webAbsoluteUrl + "/_vti_bin/listdata.svc/Employees?$select=Создано,Название", function (data) { console.log(data) }); }
http://site/_api/web/lists/GetByTitle('Employees')/items(1)?$select=Titleполучаем
через JavaScript (предварительно подключив jQuery)
_spBodyOnLoadFunctionNames.push("getEmployees"); function getEmployees() { var request = $.ajax({ url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/lists/getbytitle('Employees')/items?$select=Title", type: "GET", headers: {"Accept": "application/json;odata=verbose"}, cache:false, success: function(data){ console.log("моя функция") } }); request.done(function (data){ console.log('данные REST получены, объектов - ' + data.d.results.length); console.log(data) }); request.fail(function (){console.log('Ошибка при выполнении запроса REST')}); }на выходе
как уже могли заметить данные получаем не через $.getJSON(), а через $.ajax(), т.к. на нужено передать свойство headers: {"Accept": "application/json;odata=verbose"}, что бы нам вернулся JSON
так же я добавил обработчики .done() и fail(), что бы выводить информацию по результатам выполнения запроса REST
Комментариев нет:
Отправить комментарий