簡體   English   中英

用於獲取自定義元數據列的SharePoint REST API

[英]SharePoint REST API for Fetching custom Metadata Columns

我正在開發一個在處理文檔后將文檔導出到SharePoint存儲庫的插件。 與文檔一起,我需要發送SharePoint中定義的“自定義元數據”列的值。

我已經弄清楚了如何跨文件和元數據發送到指定位置。

問題:最初,我不知道給定文件夾中有哪些自定義元數據列。 有人可以闡明任何可以獲取存儲庫中給定位置的可用元數據列的REST Web服務。

注意:我正在使用純Java來使用Apache HTTP Client進行REST請求。

用於檢索列表中的自定義字段的REST網址是:

_api/web/lists/GetByTitle('Custom List')/fields

我對使用Java解析JSON不太了解,但這將為您提供所有列的列表以及有關它們的詳細信息。 我顯示了下面返回的一些數據。

DefaultValue : null
Description : ""
EnforceUniqueValues : false
Id : "fa564e0f-0c70-4ab9-b863-0177e6ddd123"
Indexed : false
InternalName : "Title"
ReadOnlyField : false
Required : false
StaticName : "Title"
Title : "Title"
FieldTypeKind : 2
TypeAsString : "Text"
TypeDisplayName : "Single line of text"

如果需要獲取特定文件夾而不是庫的可用列:

_api/web/getfolderbyserverrelativeurl('/Shared%20Documents/Folder')/ListItemAllFields

SharePoint 2013具有REST API終結點,如果您使用CAML通過POST請求獲取信息,則該REST API終結點可以檢索和篩選元數據列。 如果您的請求是從SharePoint本身發出的,則可以使用母版頁的RequestDigest ,但是由於是遠程進行的,因此必須通過查詢/_api/contextinfo並獲取FormDigestValue來獲取此參數。 這里是一篇文章:

http://www.cleverworkarounds.com/2013/09/23/how-to-filter-on-a-managed-metadata-column-via-rest-in-sharepoint-2013/

另外,您必須在SharePoint數據存儲庫上啟用CORS

<?xml version="1.0" encoding="utf-8"?>
<configuration>
 <system.webServer>
   <httpProtocol>
     <customHeaders>
       <add name="Access-Control-Allow-Origin" value="*" />
     </customHeaders>
   </httpProtocol>
 </system.webServer>
</configuration>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM