Получить URL-адрес за элементами ссылок в библиотеке документов SharePoint через REST API - PullRequest
1 голос
/ 30 января 2020

У меня есть пользовательская веб-часть, которую я могу подключить к разным источникам данных (например, к библиотекам документов SharePoint). Затем я могу сопоставить свойства элемента из этой библиотеки документов с одним из моих различных шаблонов представления.

Проблема заключается в том, что когда я добавляю элемент ссылки (внешний URL-адрес) в эту библиотеку документов, я не могу найти свойство элемента, которое сохраняет этот внешний URL.

enter image description here

Сейчас я получаю свойства элемента через SharePoint REST API. Я проверил значения для FileRef и EncodedAbsUrl , но это URL-адреса, указывающие на файл библиотеки документов SharePoint, а не на внешний URL-адрес.

После некоторых исследований Я видел на вкладке Сеть инструментов разработки (F12), есть вызов https://{siteurl}/_api/SP.Utilities.ShortcutLink.GetShortcutLink(@a1)?@a1={siteUrl}/Shared%20Documents/www.dummysite.com.url, который будет извлекать фактический связанный внешний URL, но это не очень хороший вариант для меня, так как повторный вызов REST для каждого элемента повлияет на мой производительность.

Так есть ли какое-либо свойство элемента, которое я мог бы расширить, чтобы получить внешний URL-адрес, через REST API?

1 Ответ

0 голосов
/ 03 февраля 2020

Вы можете извлечь свойства для указанного элемента c, а затем выбрать свойство "vti_x005f_shortcuturl". Например,

    https://<your site url>/_api/web/lists/getbytitle("your library 
    name")/items(1)/properties?$select=vti_x005f_shortcuturl 

Если у вас нет заранее идентификатора элемента, то сначала получите только идентификаторы из библиотеки документов, используя rest api при первом вызове, так как вы заинтересованы в производительности, если вам нужно вызывать rest api дважды, и затем вызовите выше api для каждого идентификатора элемента только с необходимыми свойствами. В приведенном выше примере он вернет URL за ссылкой для первого элемента ("/ items (1) /"), если он доступен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...