簡體   English   中英

SharePoint Rest文檔庫

[英]SharePoint Rest Document library

我正在創建一個自定義頁面,為SharePoint網站編寫HTML和JavaScript。 我想將文檔庫嵌入我在SharePoint Designer中編寫的自定義html內。

我已經找到了一種輕松地將文檔庫嵌入自定義html中的方法,但是卻偶然發現了一些有關REST API的文檔。 我想我可以使用它並在html中編寫自己的ajax應用程序供用戶瀏覽文檔庫。

我目前正在嘗試使用此javascrip來查看是否可以為文檔庫內容提取html或JSON:

<script type="text/javascript">
var folderUrl = "x/x/x/testDocumentLibrary/Forms/AllItems.aspx";
var url = _spPageContextInfo.webServerRelativeUrl + "/_api/Web/GetFolderByServerRelativeUrl('" + folderUrl + "')?$expand=Folders,Files";

$.getJSON(url,function(data,status,xhr){

    for(var i = 0; i < data.Files.length;i++){
        console.log(data.Files[i].Name);    
    }

    for(var i = 0; i < data.Folders.length;i++){
        console.log(data.Folders[i].Name);    
    }
});
 </script>

我不確定我是否為folderUrl變量使用了正確的URL。

為了進行一些測試, _spPageContextInfo.webServerRelativeURL是什么? 我正在嘗試查看是否可以向后工作,並首先在沒有SP函數調用的情況下手動創建URL。

示例代碼中的folderUrl變量應以庫的路徑結尾; 直到/Forms/AllItems.aspx為止,因此/x/x/x/testDocumentLibrary其中/x/x/x/是庫所在站點的服務器相對路徑。

_spPageContextInfo對象提供了兩種相對於服務器的URL,一種用於當前網站(在SharePoint術語中稱為“網站”),另一種用於當前網站 (在SharePoint術語中稱為“網站”)。 適當地,這些屬性被標記為webServerRelativeURLsiteServerRelativeURL 這兩個都是相對於服務器的,這意味着它們排除了域名的第一部分。 (而不是https://constoso.com/sites/stackoverflow它們將為您提供/sites/stackoverflow 。)

對於REST調用,您可能需要絕對URL,而不是服務器相對URL。 您可以通過_spPageContextInfo的屬性webAbsoluteURLsiteAbsoluteURL訪問Web和站點的絕對URL。

如果要訪問的列表/庫位於運行REST的當前站點上,請使用webAbsoluteURL屬性。

暫無
暫無

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

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