Как подписываться на документы, сайты и теги, используя службу REST в SharePoint
Создавайте приложения, размещаемые в SharePoint, которые используют службу REST для подписки на контент (документы, сайты и теги) и получения контента из подписки.
Как использовать службу REST SharePoint для подписки на контент?
Пользователи SharePoint могут отслеживать документы, сайты и теги для получения обновлений об элементах в своих лентах новостей и быстрого открытия отслеживаемых документов и сайтов. Вы можете использовать API REST SharePoint в приложении или решении для начала отслеживания контента, прекращения отслеживания контента и получения отслеживаемого контента от имени текущего пользователя.
Доступны следующие ресурсы REST, основного API для контента следующие задачи:
SocialRestFollowingManager предоставляет методы для управления пользовательского списка число субъектов.
SocialActor представляет документ, сайта или тег, сервер возвращает в ответ на запрос на стороне клиента.
SocialActorInfo указывает документ, сайта или тега в запросах со стороны клиента к серверу.
SocialActorType и SocialActorTypes укажите типы контента в запросах со стороны клиента к серверу.
Для выполнения следующих контента задач с помощью интерфейса API REST, службы REST отправки HTTP GET и POST HTTP-запросов. URI конечных точек REST для следующих контента задач начинаются с SocialRestFollowingManager ресурсов ( <siteUri>/_api/social.following ) и заканчиваются ознакомьтесь со следующими ресурсами:
follow запуск отслеживание документа, сайта или тега
stopfollowing, чтобы отменить подписку на документ, сайта или тега
isfollowed, чтобы узнать, совместимо ли после пользователя конкретного документа, сайта или тега
my/followed, чтобы получить число документов, сайтов и тегов
my/followedcount для подсчета число документов, сайтов и тегов
Вы также можете использовать эти конечные точки для задач отслеживания людей, но ресурсы followers и suggestions, доступные в SocialRestFollowingManager, поддерживают только отслеживание людей, а не контента. Дополнительные сведения об использовании SocialRestFollowingManager см. в статьях Подписка на контент в SharePoint и Подписка на людей в SharePoint.
Необходимые условия для создания приложения с размещением в SharePoint, управляющего контентом из подписки с помощью службы REST SharePoint
В этой статье предполагается, что вы создаете надстройку для SharePoint с помощью Napa на сайте разработчика Office 365. Если вы используете эту среду разработки, то необходимые условия выполняются.
Перейдите к Настройка среды для разработки надстроек SharePoint в Office 365 Зарегистрируйтесь на сайте разработчика и начать использовать Napa.
Если вы не используете Napa на Office 365 сайт разработчика, необходимо перед развертыванием Надстройка SharePoint выполняются следующие требования:
Среда разработки SharePoint, настроенная для изоляции приложений. При удаленной разработке сервер должен поддерживать загрузку неопубликованных приложений или приложения необходимо устанавливать на сайте разработчика.
Узел Личный сайт, настроены на личный сайт, созданный для текущего пользователя.
Visual Studio 2012 или Visual Studio 2013 с Инструменты разработчика Office для Visual Studio 2013.
Достаточные разрешения для пользователя, вошедшего в систему:
Разрешения локального администратора на компьютере разработчика.
Разрешения пользователей на управление веб-сайтом и создание дочерних сайтов на сайте SharePoint, на котором устанавливается приложение. По умолчанию эти разрешения есть только у пользователей, обладающих разрешениями на полный доступ, или у участников группы владельцев сайта.
Необходимо войти в систему как кто-то отличную от учетной записи системы. Системная учетная запись не имеет разрешения, чтобы установить приложение.
В разделе Настройка локальной среды разработки надстроек SharePoint руководство по локальной установки (включая отключение проверки замыкания на себя при необходимости).
Создание проекта надстройки SharePoint
На сайте разработчика откройте Napa и выберите Добавить новый проект.
Выберите шаблон приложение для SharePoint, назовите проект и затем нажмите кнопку Создать.
Установка разрешений для вашего приложения:
В нижней части страницы нажмите кнопку Свойства.
В окне Свойства выберите разрешения.
В разделе категория контента задайте разрешения Write для области клиента.
В разделе категория социальных задайте разрешения Read для области Профили пользователей.
Закройте окно свойств.
Разверните узел скриптов, откройте файл App.js и замените его содержимое на код из одного из следующих сценариев:
Чтобы запустить приложение, нажмите кнопку Запустить проект в нижней части страницы.
В вы доверяете открывшейся странице нажмите кнопку Доверять его. Страница приложения открывает и выполняет код. Чтобы выполнить отладку страницы, нажмите клавишу F12 и выберите App.js на вкладке скрипта.
Пример кода: начало подписки и прекращение подписки на документ с помощью службы REST SharePoint
В следующем примере кода представляет содержимое файла App.js и показано, как:
Получение URI сайта приложения из строки запроса и создать URI конечной точки <siteUri>/_api/social.following .
Создание и отправка запроса POST к конечной точке isfollowed , чтобы узнать, совместимо ли текущий пользователь уже после указанного документа.
Создание и отправка запроса POST к конечной точке follow запуск после документа.
Создание и отправка запроса POST к конечной точке stopfollowing , чтобы отменить подписку на документ.
Ознакомьтесь с JSON ответ, возвращенный запрос isfollowed и follow запроса. (Запрос stopfollowing не возвращает все действия в ответе.) В разделе ответы пример JSON.
Прежде чем запустить код необходимо отправить документ и измените значение заполнитель для переменной documentUrl URL-адрес документа.
Пример кода: начало подписки и прекращение подписки на сайт с помощью службы REST SharePoint
В следующем примере кода представляет содержимое файла App.js и показано, как:
Получение URI сайта приложения из строки запроса и создать URI конечной точки <siteUri>/_api/social.following .
Создание и отправка запроса POST к конечной точке isfollowed , чтобы узнать, совместимо ли текущий пользователь уже после указанного сайта.
Создание и отправка запроса POST к конечной точке follow для запуска подписки на сайт.
Создание и отправка запроса POST к конечной точке stopfollowing , чтобы отменить подписку на сайт.
Ознакомьтесь с JSON ответ, возвращенный запрос isfollowed и follow запроса. (Запрос stopfollowing не возвращает все действия в ответе.) В разделе ответы пример JSON.
Прежде чем выполнять код измените значение заполнитель для переменной siteUrl в соответствии с сайта, которую требуется выполнить. Используйте формат http://server/siteCollection/site для сайта в семействе сайтов. Сайта можно выполнить с любой страницы или библиотеки на этом сайте. Если на сайте используется шаблон, который не поддерживает следующие (например, узел личных сайтов или личных сайтов), вы получите ошибку UnsupportedSite (код ошибки 10).
Пример кода: начало подписки и прекращение подписки с помощью службы REST SharePoint
В следующем примере кода представляет содержимое файла App.js и показано, как:
Получение URI сайта приложения из строки запроса и создать URI конечной точки <siteUri>/_api/social.following .
Создание и отправка запроса POST к конечной точке isfollowed , чтобы узнать, совместимо ли текущий пользователь уже после указанного тега.
Создание и отправка запроса POST к конечной точке follow запуск после тега.
Создание и отправка запроса POST к конечной точке stopfollowing остановка после тега.
Ознакомьтесь с JSON ответ, возвращенный запрос isfollowed и follow запроса. (Запрос stopfollowing не возвращает все действия в ответе.) Для получения дополнительных сведений см ответы пример JSON.
Прежде чем выполнять код измените значение заполнитель для переменной tagGuid GUID существующего тега. Таксономия API, которая используется для извлечения тега из HashTagsTermSet не имеет REST-интерфейса, поэтому необходимо с помощью клиентской объектной модели .NET или JavaScript объектной модели. Узнайте, Как получить идентификатор GUID тега на основании имя тега с помощью объектной модели JavaScript для примера.
Пример кода: получение контента из подписки с помощью службы REST SharePoint
В следующем примере кода представляет содержимое файла App.js и показано, как:
Получение URI сайта приложения из строки запроса и создать URI конечной точки <siteUri>/_api/social.following .
Создание и отправка запроса GET к конечной точке my/followedcount для подсчета контента, выполнив текущего пользователя.
Создание и отправка запроса GET к конечной точке my/followed для получения содержимого, выполнив текущего пользователя.
Ознакомьтесь с JSON ответ, возвращенный в запросах. В разделе ответы пример JSON.
Примеры ответов JSON для запросов подписки на контент
По умолчанию службы REST возвращает ответы, отформатированные с помощью протокола Atom, но можно запросить формат JSON с помощью Accept заголовок HTTP (например: "accept":"application/json;odata=verbose" ). Данные ответа возвращается в виде строки, и можно использовать функции JSON.stringify и JSON.parse для преобразования строки в объект, как показано в предыдущих примерах кода.
Для устранения ошибки, возвращенной службы REST в режиме отладки, посмотрите на свойство responseText, как показано в функции обратного вызова requestFailed в предыдущих примерах. Также вы можете получить идентификатор корреляции для журнала сервера ULS на прослушивания сети или отладчик HTTP, такие как Fiddler. Идентификатор корреляции это то же, что код запроса в HTTP-ответа.
Пример ответа для конечной точки FollowВ ответ на стороне клиента запросы к конечной точке follow службы REST возвращает значение SocialFollowResult, представляет ли запрос Follow успешно.
Приведенный ниже ответ представляет состояние AlreadyFollowing.
В таблице 1 приведены коды состояния SocialFollowResult и их значения.
В таблице 1. Коды SocialFollowResult и значения
Код состояния Значение 0 OK. Текущий пользователь является теперь следующую субъект. 1 AlreadyFollowing. Текущий пользователь уже подписан субъект. 2 LimitReached. Запрос завершился ошибкой, так как достигнут внутренний предел. 3 InternalError. Не удалось выполнить запрос из-за внутренней ошибки.
Службы REST не возвращает ответ на запрос StopFollowing. Она возвращает .
Пример ответа для конечной точки IsFollowedВ ответ на стороне клиента запросы к конечной точке isfollowed службы REST возвращает значение bool, представляет ли текущий пользователь является выполнив указанного субъекта.
Приведенный ниже ответ указывает, что текущий пользователь не подписан указанный документ, сайта или тег.
Пример ответа для конечной точки My/FollowedВ ответ на стороне клиента запросы к конечной точке my/followed службы REST возвращает массив объектов SP.Social.SocialActor, представляющих документы, сайты и теги, выполнив текущего пользователя.
Приведенный ниже ответ представляет число документов, сайта и тег. Запрос указывает типы контента для включения.
Пример ответа для конечной точки My/FollowedCountВ ответ на стороне клиента запросы к конечной точке my/followedcount службы REST возвращается значение Int32, представляющее общее число типов указанного субъекта, выполнив текущего пользователя.
Приведенный ниже ответ представляет число три число документов, сайтов и/или теги. Запрос указывает типы контента для включения.