我有一个包含文件夹的图片库。根文件夹包含另一个以年命名的文件夹。每年文件夹包含多个相册文件夹。至少每张专辑彩票都包含图片。我创建了新的布尔字段'IsCover',它定义了专辑的封面图像。 然后我尝试通过REST API获取带有文件的相册文件夹,我想知道哪个文件是封面的,但响应不包含这样的字段。
http://portal/_api/web/getfolderbyserverrelativeurl('mediagallery/2016/')/Folders?$expand=Files
"CheckInComment": "",
"CheckOutType": 2,
"ContentTag": "{4E99ABFD-51A3-460F-9B34-1A1962F3C2CF},1,2",
"CustomizedPageStatus": 0,
"ETag": "\"{4E99ABFD-51A3-460F-9B34-1A1962F3C2CF},1\"",
"Exists": true,
"Length": "98331",
"Level": 1,
"MajorVersion": 1,
"MinorVersion": 0,
"Name": "IMG_3474.JPG",
"ServerRelativeUrl": "/MediaGallery/2016/NY/IMG_3474.JPG",
"TimeCreated": "2016-03-20T21:00:27Z",
"TimeLastModified": "2016-03-20T21:00:27Z",
"Title": null,
"UIVersion": 512,
"UIVersionLabel": "1.0"
如果我试图获取库中的所有项目,那没关系,它会显示我的字段。
http://portal/_api/web/lists('guid')/Items
我尝试使用$select
获取字段但不起作用。
http://portal/_api/web/getfolderbyserverrelativeurl('mediagallery/2016/')/Folders?$expand=Files&$select=Name,Files/ServerRelativeUrl,Files/IsCover
答案 0 :(得分:2)
http://portal/_api/web/getfolderbyserverrelativeurl('mediagallery/2016/')/Folders?$expand=Files
此请求仅限制文件内容类型的字段。要查看列表项中的字段,您应该将ListItemAllFields添加到$ expand参数。
http://portal/_api/web/getfolderbyserverrelativeurl('mediagallery/2016/')/Folders?$expand=Files,Files/ListItemAllFields
此查询将返回ListItemAllFields部分中的列表项和自定义字段。
答案 1 :(得分:2)
我知道这已经快一年了,但我在尝试在文档库中找到自定义列时遇到了类似的问题,here给了我答案;
var baseUrl = “/_api/Web/GetFolderByServerRelativeUrl(‘Pages/Landing Pages’)/Files?”;
var selectQuery = “$select=ListItemAllFields/ID,ListItemAllFields/Title,ListItemAllFields/FileRef,ListItemAllFields/Modules&”;
var expandQuery = “$expand=ListItemAllFields”;
var combinedUrl = baseUrl + selectQuery + expandQuery;
只需更改列名称的ID,标题等
即可由于
伊恩