我使用新的 SharePoint 在线体验在 SitePages 库中创建了一个 SharePoint 页面。页面已创建,我尝试使用 MS Graph 端点获取页面属性:
https://graph.microsoft.com/v1.0/drives/{drive-id}/root:/site_page.aspx?expand=listItem
我得到的回应:
{
...
"name": "site_page.aspx",
...
"file": {
"mimeType": "application/xml",
"hashes": {
"quickXorHash": ""
}
},
...
"listItem": {
...
"id": "4",
...
"contentType": {
"id": "0x0101009D1CB255DA76424F860D91F20E6C411800020BAE24978F3545AFD24007B325ACF9"
},
"fields": {
"FileLeafRef": "site_page.aspx",
"Title": "site_page",
"LinkTitle": "site_page",
"id": "4",
"ContentType": "Site Page",
...
}
}
}
然后我将 Wiki 页面内容添加到此库中以支持我网站中的 Wiki 页面。我创建了一个新的 Wiki 页面并使用 MS Graph 端点再次获取页面属性:
https://graph.microsoft.com/v1.0/drives/{drive-id}/root:/wiki_page.aspx?expand=listItem
我得到的回应:
{
...
"name": "wiki_page.aspx",
...
"file": {
"mimeType": "application/xml"
},
...
"listItem": {
...
"id": "5",
...
"contentType": {
"id": "0x0101009D1CB255DA76424F860D91F20E6C411800020BAE24978F3545AFD24007B325ACF9"
},
"fields": {
"FileLeafRef": "wiki_page.aspx",
"Title": "wiki_page",
"LinkTitle": "wiki_page",
"id": "5",
"ContentType": "Site Page",
"WikiField" : "..."
...
}
}
}
如您所见,这两个项目具有相同的内容类型。这怎么可能?唯一的区别是 wiki_page 项目不包含“哈希”属性,但包含“WikiField”属性(存储 wiki 页面内容的位置)。还有另一种区分页面类型的方法吗?