REST APi 获取 SharePoint 文档库中特定文件夹中的所有时间
REST APi to get all times in specific folder in SharePoint document library
我想使用 REST API
获取名为 "Pages" 的 SharePoint 文档库中特定文件夹中的项目
我使用下面的 rest API 可以获取文档库中的所有项目
https://spsite/_api/web/lists/getByTitle('Pages')/项
但我还没有找到 REST api,我可以在 SharePoint 文档库中的特定文件夹中随时获取它
您需要使用 CAML 查询来指定 "filter"
在此 CAML 查询中,您可以使用以下字段:FileDirRef 并将文件夹的 serverRelativeURL 作为值。
这是一个如何使用 REST API 执行 CAML 查询的示例:Using CAML with SharePoint REST API
您可以使用 SharePoint 2013 REST 从特定文件夹访问文件API。
结束点:
http://<site url>/_api/web/getfolderbyserverrelativeurl('/<folder name>')/files
此 URL 将 return 仅位于指定文件夹下(仅下一级)的文件。
参考文献:
至少有两个选项可用于特定文件夹中的 return 项:
1) 使用 /_api/web/getfolderbyserverrelativeurl('<serverrelativefolderurl>')
端点
以下示例 returns 所有文件以及特定文件夹中的关联列表项:
/_api/web/getfolderbyserverrelativeurl('<serverrelativefolderurl>')/files?$expand=ListItemAllFields
2) 使用 FolderServerRelativeUrl
property 的 CAML 查询
function getListItems(webUrl,listTitle, queryText,folderUrl)
{
var viewXml = '<View><Query>' + queryText + '</Query></View>';
var url = webUrl + "/_api/web/lists/getbytitle('" + listTitle + "')/getitems";
var queryPayload = {
'query' : {
'__metadata': { 'type': 'SP.CamlQuery' },
'ViewXml' : viewXml,
"FolderServerRelativeUrl": folderUrl
}
};
return $.ajax({
url: url,
method: "POST",
data: JSON.stringify(queryPayload),
headers: {
"X-RequestDigest": $("#__REQUESTDIGEST").val(),
"Accept": "application/json; odata=verbose",
"content-type": "application/json; odata=verbose"
}
});
}
用法
getListItems(_spPageContextInfo.webAbsoluteUrl,'Pages', '', '/Pages/Archive')
.then(function(data)
{
var items = data.d.results;
for(var i = 0; i < items.length;i++) {
console.log(items[i].Title);
}
})
.fail(function(error){
console.log(JSON.stringify(error));
});
我想使用 REST API
获取名为 "Pages" 的 SharePoint 文档库中特定文件夹中的项目我使用下面的 rest API 可以获取文档库中的所有项目
https://spsite/_api/web/lists/getByTitle('Pages')/项
但我还没有找到 REST api,我可以在 SharePoint 文档库中的特定文件夹中随时获取它
您需要使用 CAML 查询来指定 "filter"
在此 CAML 查询中,您可以使用以下字段:FileDirRef 并将文件夹的 serverRelativeURL 作为值。
这是一个如何使用 REST API 执行 CAML 查询的示例:Using CAML with SharePoint REST API
您可以使用 SharePoint 2013 REST 从特定文件夹访问文件API。
结束点:
http://<site url>/_api/web/getfolderbyserverrelativeurl('/<folder name>')/files
此 URL 将 return 仅位于指定文件夹下(仅下一级)的文件。
参考文献:
至少有两个选项可用于特定文件夹中的 return 项:
1) 使用 /_api/web/getfolderbyserverrelativeurl('<serverrelativefolderurl>')
端点
以下示例 returns 所有文件以及特定文件夹中的关联列表项:
/_api/web/getfolderbyserverrelativeurl('<serverrelativefolderurl>')/files?$expand=ListItemAllFields
2) 使用 FolderServerRelativeUrl
property 的 CAML 查询
function getListItems(webUrl,listTitle, queryText,folderUrl)
{
var viewXml = '<View><Query>' + queryText + '</Query></View>';
var url = webUrl + "/_api/web/lists/getbytitle('" + listTitle + "')/getitems";
var queryPayload = {
'query' : {
'__metadata': { 'type': 'SP.CamlQuery' },
'ViewXml' : viewXml,
"FolderServerRelativeUrl": folderUrl
}
};
return $.ajax({
url: url,
method: "POST",
data: JSON.stringify(queryPayload),
headers: {
"X-RequestDigest": $("#__REQUESTDIGEST").val(),
"Accept": "application/json; odata=verbose",
"content-type": "application/json; odata=verbose"
}
});
}
用法
getListItems(_spPageContextInfo.webAbsoluteUrl,'Pages', '', '/Pages/Archive')
.then(function(data)
{
var items = data.d.results;
for(var i = 0; i < items.length;i++) {
console.log(items[i].Title);
}
})
.fail(function(error){
console.log(JSON.stringify(error));
});