Web REST API 引用
了解 SharePoint REST API 中与网站相关的资源和终结点。
上次修改时间:2016年9月15日
适用范围:apps for SharePoint | SharePoint Online | SharePoint Server 2013
关于本文中的请求示例
本文中的示例使用 jQuery AJAX 请求。在尝试使用示例之前,请执行以下操作:
更改 <网站 URL> 和其他占位符数据,例如 SharePoint 实体的任何 ID、名称或路径。
如果您使用跨域库,您需要更改请求格式。例如,它可能如下所示。
executor.executeAsync({ url: "<app web url>/_api/SP.AppContextSite(@target)/web/getchanges?@target='<host web url>'", method: "POST", body: "{ 'query': { '__metadata': { 'type': 'SP.ChangeQuery' }, 'Web': true, 'Update': true } }", headers: { "accept": "application/json;odata=verbose", "content-type": "application/json;odata=verbose" }, success: successHandler, error: errorHandler });
如果您使用 OAuth,请添加 Authorization 标头 ("Authorization": "Bearer " + <access token>) 以发送 OAuth 访问令牌。
在请求示例中,从 url 和 data 属性值中删除换行符。将换行符添加到示例中,使其更易于读取。
如果您希望服务器以 Atom 格式返回响应,请删除 "accept": "application/json;odata=verbose" 标头。
请参阅 REST 请求如何因环境而异获取有关更改请求的详细信息。请参阅其他资源获取有关使用跨域库、OAuth 和 SharePoint REST 服务的详细信息的链接。
提示
SharePoint Online REST 服务支持使用 OData $batch 查询选项,将多个请求组合到对服务的单个调用中。有关详细信息和代码示例链接,请参阅使用 REST API 发出批处理请求。内部部署 SharePoint 尚不支持此选项。
Web 资源
表示 SharePoint 网站。网站类型为 SP.SecurableObject。
终结点 URI
http://<网站 url>/_api/web
支持的 HTTP 方法
GET | POST | DELETE | MERGE | PUT
请求示例
GET 请求示例:获取网站
$.ajax({
url: "http://<site url>/_api/web",
type: "GET",
headers: { "accept": "application/json;odata=verbose" },
success: successHandler,
error: errorHandler
});
POST 请求示例:使用 WebCollection 资源中的 Add 方法创建网站
$.ajax({
url: "http://<site url>/_api/web/webs/add",
type: "POST",
data: "{ 'parameters': { '__metadata': { 'type': 'SP.WebCreationInformation' },
'Title': 'Team projects', 'Url': 'TeamProjects', 'WebTemplate': 'STS',
'UseSamePermissionsAsParentSite': true } }",
headers: {
"X-RequestDigest": <form digest value>,
"accept": "application/json;odata=verbose",
"content-type": "application/json;odata=verbose",
"content-length": <length of body data>
},
success: successHandler,
error: errorHandler
});
或者您可以使用 WebInformationCollection 资源中的 Add 方法,如使用 REST 创建网站中所述。
MERGE 请求示例:更改网站
$.ajax({
url: "http://<site url>/_api/web",
type: "POST",
data: "{ '__metadata': { 'type': 'SP.Web' }, 'Description': 'All team projects',
'EnableMinimalDownload': false }",
headers: {
"X-RequestDigest": <form digest value>,
"accept": "application/json;odata=verbose",
"content-type": "application/json;odata=verbose",
"content-length": <length of body data>,
"X-HTTP-Method": "MERGE"
},
success: successHandler,
error: errorHandler
});
DELETE 请求示例:删除网站
$.ajax({
url: "http://<site url>/_api/web",
type: "POST",
headers: {
"X-RequestDigest": <form digest value>,
"X-HTTP-Method": "DELETE"
},
success: successHandler,
error: errorHandler
});
Web 属性
若要获取属性,请向属性终结点发送 GET 请求,如以下示例所示。
$.ajax({
url: "http://<site url>/_api/web/<property name>",
type: "GET",
headers: { "accept": "application/json;odata=verbose" },
success: successHandler,
error: errorHandler
});
属性 |
类型 |
R/W |
描述 |
|
---|---|---|---|---|
AllowCreateDeclarativeWorkflowForCurrentUser |
Boolean |
R |
不可访问 |
指定当前用户能否创建声明性工作流。如果在 Web 应用程序上未禁用,则值与网站集的 AllowCreateDeclarativeWorkflow 属性相同。默认值为:true。 |
AllowDesignerForCurrentUser |
Boolean |
R |
否 |
获取一个值,该值指定是否允许当前用户使用设计器应用程序来自定义此网站。 |
AllowMasterPageEditingForCurrentUser |
Boolean |
R |
否 |
获取一个值,该值指定是否允许当前用户编辑母版页。 |
AllowRevertFromTemplateForCurrentUser |
Boolean |
R |
否 |
获取一个值,该值指定是否允许当前用户将网站还原为默认网站模板。 |
AllowRssFeeds |
Boolean |
R |
是 |
获取一个值,该值指定网站是否允许 RSS 源。 |
AllowSaveDeclarativeWorkflowAsTemplateForCurrentUser |
Boolean |
R |
不可访问 |
指定当前用户能否将声明性工作流另存为模板。如果在 Web 应用程序上未禁用,则值与网站集的 AllowSaveDeclarativeWorkflowAsTemplate 属性相同。默认值为:true。 |
AllowSavePublishDeclarativeWorkflowForCurrentUser |
Boolean |
RW |
不可访问 |
指定当前用户能否保存或发布声明性工作流。如果在 Web 应用程序上未禁用,则值与网站集的 AllowSavePublishDeclarativeWorkflowAsTemplate 属性相同。启用后,只能由网站集管理员设置。默认值为:true。 |
AllProperties |
SP.PropertyValues |
R |
否 |
获取网站元数据的集合。 |
AppInstanceId |
GUID |
R |
是 |
此 Web 表示的应用程序实例的实例 ID。 |
AssociatedMemberGroup |
RW |
不可访问 |
获取或设置已被授予网站的参与权限的用户组。 |
|
AssociatedOwnerGroup |
RW |
不可访问 |
获取或设置网站的关联所有者组。 |
|
AssociatedVisitorGroup |
RW |
不可访问 |
获取或设置网站关联的访问者组。 |
|
AvailableContentTypes |
SP.ContentTypeCollection |
R |
否 |
获取适用于当前范围的所有内容类型的集合,包括当前网站以及任何父网站的那些内容类型。 |
AvailableFields |
R |
否 |
获取一个值,该值指定可供当前范围使用的所有字段的集合,包括当前网站以及任何父网站的那些字段。 |
|
配置 |
Int16 |
R |
是 |
获取用于创建网站的网站定义配置的标识符 (ID),或者获取用于创建网站的网站模板来源的网站定义配置的 ID。 |
ContentTypes |
SP.ContentTypeCollection |
R |
否 |
获取网站的内容类型的集合。 |
Created |
DateTime |
R |
是 |
获取指定何时创建该站点的值。 |
CurrentUser |
R |
否 |
获取网站的当前用户。 |
|
CustomMasterUrl |
String |
RW |
是 |
获取或设置自定义母版页文件的 URL,以便应用于网站。 |
说明 |
String |
RW |
是 |
获取或设置该站点的说明。 |
DesignerDownloadUrlForCurrentUser |
String |
R |
不可访问 |
获取当前用户可以下载 SharePoint Designer 的 URL。 |
DocumentLibraryCalloutOfficeWebAppPreviewersDisabled |
Boolean |
R |
是 |
确定文档库标注的 WAC 预览器是否已启用。 |
EffectiveBasePermissions |
R |
不可访问 |
表示应用程序主体和用户主体的权限交集。在仅涉及应用程序的情况下,此属性仅返回应用程序主体的权限。 要检查仅用户权限(忽略应用程序权限),请使用 GetUserEffectivePermissions 方法。 |
|
EnableMinimalDownload |
Boolean |
RW |
是 |
获取或设置一个布尔值,该值指示网站是否应该使用最少下载策略。 |
EventReceivers |
SP.EventReceiverCollection |
R |
否 |
获取当前在网站中可用的事件接收器定义的集合。 |
功能 |
SP.FeatureCollection |
R |
否 |
获取一个值,该值指定网站中当前激活的功能的集合。 |
域 |
R |
否 |
获取字段对象的集合,该集合表示网站中的所有字段。 |
|
Folders |
R |
否 |
获取网站的所有第一级文件夹的集合。 |
|
Id |
GUID |
R |
是 |
获取用于指定网站标识符的值。 |
语言 |
Int32 |
R |
是 |
获取一个值,该值指定网站所使用语言的 LCID。 |
LastItemModifiedDate |
DateTime |
R |
是 |
获取在该站点最后修改项的时间的值。 |
列表 |
R |
否 |
获取网站中包含的、基于当前用户的权限可供当前用户使用的所有列表的集合。 |
|
ListTemplates |
SP.ListTemplateCollection |
R |
否 |
获取一个值,该值指定可用于在网站上创建列表的列表定义和列表模板的集合。 |
MasterUrl |
String |
RW |
是 |
获取或者设置用于网站的母版页 URL。 |
导航 |
SP.Navigation |
R |
否 |
获取一个值,该值指定网站上的导航结构,包括快速启动区域和顶部导航栏。 |
ParentWeb |
R |
否 |
获取指定网站的父网站。 |
|
PushNotificationSubscribers |
SP.PushNotificationSubscriberCollection |
R |
否 |
获取网站中的推送通知订阅者集合。 |
QuickLaunchEnabled |
Boolean |
RW |
是 |
获取或设置一个值,该值指定是否在网站上启用快速启动区域。 |
RecycleBin |
SP.RecycleBin |
R |
否 |
指定网站回收站的回收站项目的集合。 |
RecycleBinEnabled |
Boolean |
R |
是 |
获取或设置一个值,该值确定是否为网站启用回收站。 |
RegionalSettings |
SP.RegionalSettings |
R |
否 |
获取当前在网站上实施的区域设置。 |
RoleDefinitions |
R |
否 |
获取网站的角色定义的集合。 |
|
RootFolder |
R |
否 |
获取网站的根文件夹。 |
|
SaveSiteAsTemplateEnabled |
Boolean |
RW |
不可访问 |
获取或设置一个布尔值,该值指定是否可以将网站另存为网站模板。 |
ServerRelativeUrl |
String |
RW |
是 |
获取或设置网站相对于服务器的 URL。 |
ShowUrlStructureForCurrentUser |
Boolean |
R |
否 |
获取一个值,该值指定当前用户能否查看此网站的文件系统结构。 |
SiteGroups |
R |
否 |
获取网站集的组的集合。 |
|
SiteUserInfoList |
R |
否 |
获取包含此网站的网站集的 UserInfo 列表。 |
|
SiteUsers |
R |
否 |
获取属于网站集的所有用户的集合。 |
|
SupportedUILanguageIds |
Collection(Int32) |
R |
否 |
指定为网站启用的语言的语言代码标识符 (LCID)。 |
SyndicationEnabled |
Boolean |
RW |
是 |
获取或设置一个值,该值指定网站上是否启用 RSS 源。 |
ThemeInfo |
SP.ThemeInfo |
R |
否 |
此网站的主题设置信息。包括类似颜色、字体、边框半径大小等信息。 |
标题 |
String |
RW |
是 |
获取或设置网站的标题。 |
TreeViewEnabled |
Boolean |
RW |
是 |
获取或设置一个值,该值指定网站上是否启用树视图。 |
UIVersion |
Int32 |
RW |
是 |
获取或设置网站的用户界面 (UI) 版本。 |
UIVersionConfigurationEnabled |
Boolean |
RW |
是 |
获取或设置一个值,该值指定是显示隐藏还是隐藏直观升级的设置 UI。 |
Url |
String |
R |
是 |
获取网站的绝对 URL。 |
UserCustomActions |
R |
否 |
获取一个值,该值指定网站的用户自定义操作的集合。 |
|
WebInfos |
SP.WebInformation |
R |
不可访问 |
表示网站的子网站的密钥属性。 |
Webs |
R |
否 |
获取一个网站集合对象,该对象表示该网站紧下方的所有网站,不包括这些网站的子网站。 |
|
WebTemplate |
String |
R |
是 |
获取网站定义或用于创建网站的网站模板的名称。 |
WorkflowAssociations |
SP.WorkflowAssociationCollection |
R |
否 |
获取一个值,该值指定网站的所有工作流关联的集合。 |
WorkflowTemplates |
SP.WorkflowTemplateCollection |
R |
否 |
获取一个值,该值指定与网站关联的工作流模板的集合。 |
Web 方法
ApplyTheme
ApplyWebTemplate
BreakRoleInheritance
DeleteObject
DoesPushNotificationSubscriberExist
DoesUserHavePermissions
EnsureUser
ExecuteRemoteLOB
GetAppBdcCatalog
GetAppBdcCatalogForAppInstance
GetAppInstanceById
GetAppInstancesByProductId
GetAvailableWebTemplates
GetCatalog
GetChanges
GetContextWebInformation
GetEntity
GetDocumentLibraries
GetFileByServerRelativeUrl
GetFolderByServerRelativeUrl
GetList
GetPushNotificationSubscriber
GetPushNotificationSubscribersByArgs
GetPushNotificationSubscribersByUser
GetSubwebsFilteredForCurrentUser
GetUserById
GetUserEffectivePermissions
GetWebUrlFromPageUrl
LoadAndInstallApp
LoadAndInstallAppInSpecifiedLocale
LoadApp
MapsToIcon
ProcessExternalNotification
RegisterPushNotificationSubscriber
ResetRoleInheritance
UnregisterPushNotificationSubscriber
ApplyTheme 方法
应用各文件内容(由网站的参数指定)指定的主题。
终结点 |
/applytheme(colorpaletteurl, fontschemeurl, backgroundimageurl, sharegenerated) |
参数 |
|
HTTP method |
POST |
响应 |
无 |
请求示例
$.ajax({
url: "http://<site url>/_api/web
/applytheme(colorpaletteurl='/_catalogs/theme/15/palette011.spcolor',
fontschemeurl='/_catalogs/theme/15/fontscheme007.spfont',
backgroundimageurl='/piclibrary/th.jpg', sharegenerated=true)",
type: "POST",
headers: { "X-RequestDigest": <form digest value> },
success: successHandler,
error: errorHandler
});
或者您可以在正文中发送参数:{ 'colorPaletteUrl':'/_catalogs/theme/15/palette011.spcolor', 'fontSchemeUrl':'/_catalogs/theme/15/fontscheme007.spfont', 'backgroundImageUrl':'/piclibrary/pics/th.jpg', 'shareGenerated':true }
请参阅 SharePoint 2013 主题概述。
ApplyWebTemplate 方法
将指定的网站定义或网站模板应用于尚未应用模板的网站。
备注
在当前应用的相同网站定义配置中定义的网站配置回调函数内调用此方法可能导致无限循环。相反,请在网站定义内创建两个类似的网站定义配置,一个可见,一个隐藏。可见配置可能包含将隐藏配置应用于网站的配置程序集回调。
终结点 |
/applywebtemplate('<网站定义或 Web 模板名称>') |
参数 |
类型:String |
HTTP method |
POST |
响应 |
无 |
请求示例
$.ajax({
url: "http://<site url>/_api/web
/applywebtemplate(@v)?@v='blog%230'",
type: "POST",
headers: { "X-RequestDigest": <form digest value> },
success: successHandler,
error: errorHandler
});
BreakRoleInheritance 方法
为安全对象创建唯一角色分配。
终结点 |
/breakroleinheritance(copyroleassignments, clearsubscopes) |
参数 |
|
HTTP method |
POST |
响应 |
无 |
请求示例
$.ajax({
url: "http://<site url>/_api/web
/breakroleinheritance(copyroleassignments=false, clearsubscopes=true)",
method: "POST",
headers: { "X-RequestDigest": <form digest value> },
success: successHandler,
error: errorHandler
});
DeleteObject 方法
示例
DoesPushNotificationSubscriberExist 方法
检查拥有给定设备应用程序实例 ID 的当前用户是否存在推送通知订阅。
终结点 |
/doespushnotificationsubscriberexist('<设备应用程序实例 id >') |
参数 |
类型:GUID |
HTTP method |
GET |
响应 |
类型:如果订阅存在,则为 Boolean |
DoesUserHavePermissions 方法
返回当前用户是否具有给定的权限集。
终结点 |
/doesuserhavepermissions(@v)?@v={'High':'<值>', 'Low':'<值>'} |
参数 |
类型:SP.BasePermissions |
HTTP method |
GET |
响应 |
类型:如果用户具有权限,则为 Boolean |
请求示例
$.ajax({
url: "http://<site url>/_api/web
/doesuserhavepermissions(@v)?@v={'High':'432', 'Low':'1012866047'}",
type: "GET",
headers: { "accept": "application/json;odata=verbose" },
success: successHandler,
error: errorHandler
});
EnsureUser 方法
检查指定的登录名称是否属于网站中的有效用户。如果用户不存在,则向网站添加用户。
终结点 |
/ensureuser |
参数 |
|
HTTP method |
POST |
响应 |
类型:SP.User |
请求示例
$.ajax({
url: "http://<site url>/_api/web
/ensureuser",
type: "POST",
data: "{ 'logonName': 'i:0#.f|membership|user@domain.onmicrosoft.com' }",
headers: {
"X-RequestDigest": <form digest value>,
"accept": "application/json;odata=verbose"
},
success: successHandler,
error: errorHandler
});
ExecuteRemoteLOB 方法
将数据发送到 OData 服务。
此方法是混合连接的入口点,用于从内部部署服务器调用 OData 服务。用于发出 OData 服务调用的输入参数作为自定义 HTTP 标头传递。请参阅 ExecuteRemoteLOB。
终结点 |
/executeremotelob |
参数 |
|
HTTP method |
POST |
响应 |
类型:Stream |
GetAppBdcCatalog 方法
终结点 |
/getappbdccatalog |
参数 |
无 |
HTTP method |
POST |
响应 |
类型:SP.BusinessData.AppBdcCatalog |
GetAppBdcCatalogForAppInstance 方法
终结点 |
/getappbdccatalogforappinstance('<应用程序实例 id>') |
参数 |
类型:GUID |
HTTP method |
POST |
响应 |
类型:SP.BusinessData.AppBdcCatalog |
GetAppInstanceById 方法
检索安装在此网站上的 AppInstance。
终结点 |
/getappinstancebyid('<应用程序实例 id>') |
参数 |
类型:GUID |
HTTP method |
GET |
响应 |
类型:SP.AppInstance |
请求示例
$.ajax({
url: "http://<site url>/_api/web
/getappinstancebyid('3122ea58-8435-4d9a-a302-345599838671')",
type: "GET",
headers: { "accept": "application/json;odata=verbose" },
success: successHandler,
error: errorHandler
});
GetAppInstancesByProductId 方法
检索安装在此网站上的作为指定应用程序实例的所有 AppInstances。
终结点 |
/getappinstancesbyproductid('<产品 id>') |
参数 |
类型:GUID |
HTTP method |
GET |
响应 |
类型:Collection(SP.AppInstance) |
GetAvailableWebTemplates 方法
返回可供网站使用的网站模板的集合。
终结点 |
/getavailablewebtemplates(lcid, doincludecrosslanguage) |
参数 |
|
HTTP method |
GET |
响应 |
类型:SP.WebTemplateCollection |
请求示例
$.ajax({
url: "http://<site url>/_api/web
/getavailablewebtemplates(lcid=1033, doincludecrosslanguage=true)",
type: "GET",
headers: { "accept": "application/json;odata=verbose" },
success: successHandler,
error: errorHandler
});
GetCatalog 方法
返回网站上的列表库。
终结点 |
/getcatalog(<库类型>) |
参数 |
类型:Int32 |
HTTP method |
GET |
响应 |
类型:SP.List |
请求示例
$.ajax({
url: "http://<site url>/_api/web
/getcatalog(113)",
type: "GET",
headers: { "accept": "application/json;odata=verbose" },
success: successHandler,
error: errorHandler
});
GetChanges 方法
基于指定的查询,从更改日志中返回网站范围内发生的所有更改的集合。
终结点 |
/getchanges |
参数 |
|
HTTP method |
POST |
响应 |
类型:SP.ChangeCollection |
请求示例
$.ajax({
url: "http://<site url>/_api/web
/getchanges",
type: "POST",
data: "{ 'query': { '__metadata': { 'type': 'SP.ChangeQuery' },
'Web': true, 'Update': true, 'Add': true } }",
headers: {
"X-RequestDigest": <form digest value>
"accept": "application/json;odata=verbose",
"content-type": "application/json;odata=verbose",
"content-length": <length of body data>
},
success: successHandler,
error: errorHandler
});
GetContextWebInformation
获取网站的上下文信息。静态方法。
终结点 |
http://<网站 url>/_api/contextinfo |
参数 |
无 |
HTTP method |
POST |
响应 |
类型:SP.ContextWebInformation |
请求示例
$.ajax({
url: "http://<site url>/_api
/contextinfo",
type: "POST",
headers: {
"X-RequestDigest": <form digest value>,
"accept": "application/json;odata=verbose"
},
success: successHandler,
error: errorHandler
});
GetCustomListTemplates 方法
获取网站的自定义列表模板。
终结点 |
/getcustomlisttemplates |
参数 |
无 |
HTTP method |
GET |
响应 |
类型:SP.ListTemplateCollection |
请求示例
$.ajax({
url: "http://<site url>/_api/web
/getcustomlisttemplates",
type: "GET",
headers: { "accept": "application/json;odata=verbose" },
success: successHandler,
error: errorHandler
});
GetDocumentLibraries 方法
获取网站上的文档库。静态方法。(仅 SharePoint Online)
终结点 |
http://<网站 url>/_api/sp.web.getdocumentlibraries(@v)?@v='<完整网站 url>' |
参数 |
类型:String |
HTTP method |
GET |
响应 |
类型:Collection(SP.DocumentLibraryInformation) |
请求示例
$.ajax({
url: "http://<site url>/_api
/sp.web.getdocumentlibraries(@v)?@v='https://contoso.sharepoint.com'",
method: "GET",
headers: { "accept": "application/json;odata=verbose" },
success: successHandler,
error: errorHandler});
GetEntity 方法
在业务线 (LOB) 系统应用程序中获取指定外部内容类型。
终结点 |
/getentity(namespace, name) |
参数 |
|
HTTP method |
POST |
响应 |
类型:SP.BusinessData.Entity |
GetFileByServerRelativeUrl 方法
返回位于指定的、相对于服务器的 URL 处的文件对象。
终结点 |
/getfilebyserverrelativeurl('<服务器相对 url>') |
参数 |
类型:String |
HTTP method |
GET |
响应 |
类型:SP.File |
请求示例
$.ajax({
url: "http://<site url>/_api/web
/getfilebyserverrelativeurl('/templates/ResourceRequest.docx')",
type: "GET",
headers: { "accept": "application/json;odata=verbose" },
success: successHandler,
error: errorHandler
});
GetFolderByServerRelativeUrl 方法
返回位于指定的相对于服务器的 URL 处的文件夹对象。
终结点 |
/getfolderbyserverrelativeurl('<服务器相对 url>') |
参数 |
类型:String |
HTTP method |
GET |
响应 |
类型:SP.Folder |
请求示例
$.ajax({
url: "http://<site url>/_api/web
/getfolderbyserverrelativeurl('/templates/test')",
type: "GET",
headers: { "accept": "application/json;odata=verbose" },
success: successHandler,
error: errorHandler
});
GetList 方法
获取指定网站相对 URL 的列表。
终结点 |
/getlist('<列表 url>') |
参数 |
类型:String |
HTTP method |
GET |
响应 |
类型:SP.List |
请求示例
$.ajax({
url: "http://<site url>/_api/web
/getlist('/lists/ideas')",
type: "GET",
headers: { "accept": "application/json;odata=verbose" },
success: successHandler,
error: errorHandler
});
GetPushNotificationSubscriber 方法
获取网站中指定设备应用程序实例 ID 的推送通知订阅者。
终结点 |
/getpushnotificationsubscriber('<设备应用程序实例 id>') |
参数 |
类型:GUID |
HTTP method |
GET |
响应 |
类型:SP.PushNotificationSubscriber |
GetPushNotificationSubscribersByArgs 方法
在网站中查询指定自定义参数值的推送通知订阅者。Null 或空自定义参数将返回订阅者,而不进行任何筛选。
终结点 |
/getpushnotificationsubscribersbyargs('<参数>') |
参数 |
类型:String |
HTTP method |
GET |
响应 |
类型:SP.PushNotificationSubscriberCollection |
GetPushNotificationSubscribersByUser 方法
在网站中查询指定用户的推送通知订阅者。
终结点 |
/getpushnotificationsubscribersbyuser(@v)?@v='<登录名>' |
参数 |
类型:String |
HTTP method |
GET |
响应 |
类型:SP.PushNotificationSubscriberCollection |
GetSubwebsFilteredForCurrentUser 方法
基于指定的查询返回当前网站的子网站集合。
仅在 SharePoint Online 中可用。
终结点 |
/getsubwebsfilteredforcurrentuser(nwebtemplatefilter, nconfigurationfilter) |
参数 |
|
HTTP method |
GET |
响应 |
类型:Collection(SP.WebInformation) |
请求示例
$.ajax({
url: "http://<site url>/_api/web
/getsubwebsfilteredforcurrentuser(nwebtemplatefilter=-1,nconfigurationfilter=0)",
type: "GET",
headers: { "accept": "application/json;odata=verbose" },
success: successHandler,
error: errorHandler
});
GetUserById 方法
返回与当前网站指定成员标识符对应的用户。
终结点 |
/getuserbyid(<用户 id>) |
参数 |
类型:Int32 |
HTTP method |
GET |
响应 |
类型:SP.User |
请求示例
$.ajax({
url: "http://<site url>/_api/web
/getuserbyid(12)",
type: "GET",
headers: { "accept": "application/json;odata=verbose" },
success: successHandler,
error: errorHandler
});
GetUserEffectivePermissions 方法
获取指定用户在当前应用程序范围内拥有的有效权限。
要检查除当前用户以外其他用户的权限,应用程序必须具有网站的Full Control权限。
终结点 |
/getusereffectivepermissions(@v)?@v='<登录名>' |
参数 |
类型:String |
HTTP method |
GET |
响应 |
类型:SP.BasePermissions |
请求示例
$.ajax({
url: "http://<site url>/_api/web
/getusereffectivepermissions(@v)?@v='i%3A0%23.f%7Cmembership%7Cuser%40domain.onmicrosoft.com'",
type: "GET",
headers: { "accept": "application/json;odata=verbose" },
success: successHandler,
error: errorHandler
});
GetWebUrlFromPageUrl 方法。
从页面 URL 获取网站 URL。静态方法。
终结点 |
http://<网站 url>/_api/sp.web.getweburlfrompageurl(@v)?@v='<完整页面 url>' |
参数 |
类型:String |
HTTP method |
GET |
响应 |
类型:String |
请求示例
$.ajax({
url: "http://<site url>/_api
/sp.web.getweburlfrompageurl(@v)?@v='https://contoso.sharepoint.com/subsite/_layouts/15/start.aspx'",
method: "GET",
headers: { "accept": "application/json;odata=verbose" },
success: successHandler,
error: errorHandler
});
LoadAndInstallApp 方法
将应用程序包上载到此网站并进行安装。
必须启用此网站以进行远程开发。
终结点 |
/loadandinstallapp |
参数 |
|
HTTP 方法 |
POST |
响应 |
类型:SP.AppInstance |
LoadAndInstallAppInSpecifiedLocale 方法
在指定区域设置的网站中上载和安装应用程序包。
终结点 |
/loadandinstallappinspecifiedlocale |
参数 |
|
HTTP method |
POST |
响应 |
类型:SP.AppInstance |
LoadApp 方法
上载应用程序包并从中创建一个实例。
终结点 |
/loadapp |
参数 |
|
HTTP method |
POST |
响应 |
类型:SP.AppInstance |
MapToIcon 方法
返回图标的图像文件的名称,该图标用于表示指定的文件。
终结点 |
/maptoicon(filename, progid, size) |
参数 |
|
HTTP method |
GET |
响应 |
类型:String |
请求示例
$.ajax({
url: "http://<site url>/_api/web
/maptoicon(filename='spectemplate.docx', progid='', size=0)",
type: "GET",
headers: { "accept": "application/json;odata=verbose" },
success: successHandler,
error: errorHandler
});
ProcessExternalNotification 方法
处理从外部系统发送的通知。
终结点 |
/processexternalnotification |
参数 |
|
HTTP method |
POST |
响应 |
类型:String |
RegisterPushNotificationSubscriber 方法
在网站中注册推送通知订阅者。如果注册已经存在,将使用新值更新服务令牌。
终结点 |
/registerpushnotificationsubscriber(deviceappinstanceid, servicetoken) |
参数 |
|
HTTP method |
POST |
响应 |
类型:SP.PushNotificationSubscriber |
ResetRoleInheritance 方法
重置安全对象的角色继承并从父安全对象继承角色分配。
终结点 |
/resetroleinheritance |
参数 |
无 |
HTTP method |
POST |
响应 |
无 |
请求示例
$.ajax({
url: "http://<site url>/_api/web
/resetroleinheritance",
method: "POST",
headers: { "X-RequestDigest": <form digest value> },
success: successHandler,
error: errorHandler
});
UnregisterPushNotificationSubscriber 方法
从网站中取消注册推送通知订阅者。
终结点 |
/unregisterpushnotificationsubscriber('<设备应用程序实例 id>') |
参数 |
类型:GUID |
HTTP method |
POST |
响应 |
无 |
OData 表示
以下示例表示 JSON 格式的 Web 资源。
{"d":{
"__metadata":{
"id":"https://<site url>/_api/Web",
"uri":"https://<site url>/_api/Web",
"type":"SP.Web"
},
"FirstUniqueAncestorSecurableObject":{"__deferred":{"uri":"https://<site url>/_api/Web/FirstUniqueAncestorSecurableObject"}},
"RoleAssignments":{"__deferred":{"uri":"https://<site url>/_api/Web/RoleAssignments"}},
"AllProperties":{"__deferred":{"uri":"https://<site url>/_api/Web/AllProperties"}},
"AssociatedMemberGroup":{"__deferred":{"uri":"https://<site url>/_api/Web/AssociatedMemberGroup"}},
"AssociatedOwnerGroup":{"__deferred":{"uri":"https://<site url>/_api/Web/AssociatedOwnerGroup"}},
"AssociatedVisitorGroup":{"__deferred":{"uri":"https://<site url>/_api/Web/AssociatedVisitorGroup"}},
"AvailableContentTypes":{"__deferred":{"uri":"https://<site url>/_api/Web/AvailableContentTypes"}},
"AvailableFields":{"__deferred":{"uri":"https://<site url>/_api/Web/AvailableFields"}},
"ContentTypes":{"__deferred":{"uri":"https://<site url>/_api/Web/ContentTypes"}},
"CurrentUser":{"__deferred":{"uri":"https://<site url>/_api/Web/CurrentUser"}},
"DescriptionResource":{"__deferred":{"uri":"https://<site url>/_api/Web/DescriptionResource"}},
"EventReceivers":{"__deferred":{"uri":"https://<site url>/_api/Web/EventReceivers"}},
"Features":{"__deferred":{"uri":"https://<site url>/_api/Web/Features"}},
"Fields":{"__deferred":{"uri":"https://<site url>/_api/Web/Fields"}},
"Folders":{"__deferred":{"uri":"https://<site url>/_api/Web/Folders"}},
"Lists":{"__deferred":{"uri":"https://<site url>/_api/Web/Lists"}},
"ListTemplates":{"__deferred":{"uri":"https://<site url>/_api/Web/ListTemplates"}},
"Navigation":{"__deferred":{"uri":"https://<site url>/_api/Web/Navigation"}},
"ParentWeb":{"__deferred":{"uri":"https://<site url>/_api/Web/ParentWeb"}},
"PushNotificationSubscribers":{"__deferred":{"uri":"https://<site url>/_api/Web/PushNotificationSubscribers"}},
"RecycleBin":{"__deferred":{"uri":"https://<site url>/_api/Web/RecycleBin"}},
"RegionalSettings":{"__deferred":{"uri":"https://<site url>/_api/Web/RegionalSettings"}},
"RoleDefinitions":{"__deferred":{"uri":"https://<site url>/_api/Web/RoleDefinitions"}},
"RootFolder":{"__deferred":{"uri":"https://<site url>/_api/Web/RootFolder"}},
"SiteGroups":{"__deferred":{"uri":"https://<site url>/_api/Web/SiteGroups"}},
"SiteUserInfoList":{"__deferred":{"uri":"https://<site url>/_api/Web/SiteUserInfoList"}},
"SiteUsers":{"__deferred":{"uri":"https://<site url>/_api/Web/SiteUsers"}},
"ThemeInfo":{"__deferred":{"uri":"https://<site url>/_api/Web/ThemeInfo"}},
"TitleResource":{"__deferred":{"uri":"https://<site url>/_api/Web/TitleResource"}},
"UserCustomActions":{"__deferred":{"uri":"https://<site url>/_api/Web/UserCustomActions"}},
"Webs":{"__deferred":{"uri":"https://<site url>/_api/Web/Webs"}},
"WebInfos":{"__deferred":{"uri":"https://<site url>/_api/Web/WebInfos"}},
"WorkflowAssociations":{"__deferred":{"uri":"https://<site url>/_api/Web/WorkflowAssociations"}},
"WorkflowTemplates":{"__deferred":{"uri":"https://<site url>/_api/Web/WorkflowTemplates"}},
"AllowRssFeeds":true,
"AppInstanceId":"d025f690-8281-4cb7-ab11-04793e232661",
"Configuration":0,
"Created":"2014-02-27T20:08:25",
"CustomMasterUrl":"/_catalogs/masterpage/app.master",
"Description":"",
"DocumentLibraryCalloutOfficeWebAppPreviewersDisabled":false,
"EnableMinimalDownload":false,
"Id":"ba0bfd3d-ba13-4400-aacf-f60d56eecfbc",
"Language":1033,
"LastItemModifiedDate":"2014-02-27T20:08:28Z",
"MasterUrl":"/_catalogs/masterpage/app.master",
"QuickLaunchEnabled":true,
"RecycleBinEnabled":true,
"ServerRelativeUrl":"",
"SyndicationEnabled":true,
"Title":"ParseUm",
"TreeViewEnabled":false,
"UIVersion":15,
"UIVersionConfigurationEnabled":false,
"Url":"https://<site url>",
"WebTemplate":"APP"
}}
WebCollection 资源
表示网站的集合。
终结点 URI
http://<网站 url>/_api/web/webs
支持的 HTTP 方法
GET | POST
请求示例
GET 请求示例:获取网站中的所有子网站
$.ajax({
url: "http://<site url>/_api/web/webs",
type: "GET",
headers: { "accept": "application/json;odata=verbose" },
success: successHandler,
error: errorHandler
});
POST 请求示例:使用 Add 方法创建网站
$.ajax({
url: "http://<site url>/_api/web/webs/add",
type: "POST",
data: "{ 'parameters': { '__metadata': { 'type': 'SP.WebCreationInformation' },
'Title': 'Social Meetup', 'Url': 'social', 'WebTemplate': 'MPS#3',
'UseSamePermissionsAsParentSite': true } }",
headers: {
"X-RequestDigest": <form digest value>,
"accept": "application/json;odata=verbose",
"content-type": "application/json;odata=verbose",
"content-length": <length of body data>
},
success: successHandler,
error: errorHandler
});
或者您可以使用 WebInformationCollection 资源中的 Add 方法,如使用 REST 创建网站中所述。
示例
WebCollection 方法
Add 方法
向集合中添加新网站。
终结点 |
/add |
参数 |
|
HTTP method |
POST |
响应 |
类型:SP.Web |
请求示例
$.ajax({
url: "http://<site url>/_api/web/webs
/add",
type: "POST",
data: "{ 'parameters': { '__metadata': { 'type': 'SP.WebCreationInformation' },
'Title': 'Social Meetup', 'Url': 'social', 'WebTemplate': 'MPS#3',
'UseSamePermissionsAsParentSite': true } }",
headers: {
"X-RequestDigest": <form digest value>,
"accept": "application/json;odata=verbose",
"content-type": "application/json;odata=verbose",
"content-length": <length of body data>
},
success: successHandler,
error: errorHandler
});
使用 GetAvailableWebTemplates 方法获取可用网站模板的名称。
OData 表示
以下示例表示 JSON 格式的 WebCollection 资源。
{"d":{
"results":[{
"__metadata":{
"id":"https://<site url>/_api/Web",
"uri":"https://<site url>/_api/Web",
"type":"SP.Web"
},
"FirstUniqueAncestorSecurableObject":{"__deferred":{"uri":"https://<site url>/_api/Web/FirstUniqueAncestorSecurableObject"}},
"RoleAssignments":{"__deferred":{"uri":"https://<site url>/_api/Web/RoleAssignments"}},
"AllProperties":{"__deferred":{"uri":"https://<site url>/_api/Web/AllProperties"}},
"AssociatedMemberGroup":{"__deferred":{"uri":"https://<site url>/_api/Web/AssociatedMemberGroup"}},
"AssociatedOwnerGroup":{"__deferred":{"uri":"https://<site url>/_api/Web/AssociatedOwnerGroup"}},
"AssociatedVisitorGroup":{"__deferred":{"uri":"https://<site url>/_api/Web/AssociatedVisitorGroup"}},
"AvailableContentTypes":{"__deferred":{"uri":"https://<site url>/_api/Web/AvailableContentTypes"}},
"AvailableFields":{"__deferred":{"uri":"https://<site url>/_api/Web/AvailableFields"}},
"ContentTypes":{"__deferred":{"uri":"https://<site url>/_api/Web/ContentTypes"}},
"CurrentUser":{"__deferred":{"uri":"https://<site url>/_api/Web/CurrentUser"}},
"DescriptionResource":{"__deferred":{"uri":"https://<site url>/_api/Web/DescriptionResource"}},
"EventReceivers":{"__deferred":{"uri":"https://<site url>/_api/Web/EventReceivers"}},
"Features":{"__deferred":{"uri":"https://<site url>/_api/Web/Features"}},
"Fields":{"__deferred":{"uri":"https://<site url>/_api/Web/Fields"}},
"Folders":{"__deferred":{"uri":"https://<site url>/_api/Web/Folders"}},
"Lists":{"__deferred":{"uri":"https://<site url>/_api/Web/Lists"}},
"ListTemplates":{"__deferred":{"uri":"https://<site url>/_api/Web/ListTemplates"}},
"Navigation":{"__deferred":{"uri":"https://<site url>/_api/Web/Navigation"}},
"ParentWeb":{"__deferred":{"uri":"https://<site url>/_api/Web/ParentWeb"}},
"PushNotificationSubscribers":{"__deferred":{"uri":"https://<site url>/_api/Web/PushNotificationSubscribers"}},
"RecycleBin":{"__deferred":{"uri":"https://<site url>/_api/Web/RecycleBin"}},
"RegionalSettings":{"__deferred":{"uri":"https://<site url>/_api/Web/RegionalSettings"}},
"RoleDefinitions":{"__deferred":{"uri":"https://<site url>/_api/Web/RoleDefinitions"}},
"RootFolder":{"__deferred":{"uri":"https://<site url>/_api/Web/RootFolder"}},
"SiteGroups":{"__deferred":{"uri":"https://<site url>/_api/Web/SiteGroups"}},
"SiteUserInfoList":{"__deferred":{"uri":"https://<site url>/_api/Web/SiteUserInfoList"}},
"SiteUsers":{"__deferred":{"uri":"https://<site url>/_api/Web/SiteUsers"}},
"ThemeInfo":{"__deferred":{"uri":"https://<site url>/_api/Web/ThemeInfo"}},
"TitleResource":{"__deferred":{"uri":"https://<site url>/_api/Web/TitleResource"}},
"UserCustomActions":{"__deferred":{"uri":"https://<site url>/_api/Web/UserCustomActions"}},
"Webs":{"__deferred":{"uri":"https://<site url>/_api/Web/Webs"}},
"WebInfos":{"__deferred":{"uri":"https://<site url>/_api/Web/WebInfos"}},
"WorkflowAssociations":{"__deferred":{"uri":"https://<site url>/_api/Web/WorkflowAssociations"}},
"WorkflowTemplates":{"__deferred":{"uri":"https://<site url>/_api/Web/WorkflowTemplates"}},
"AllowRssFeeds":true,
"AppInstanceId":"9f85a4a6-3609-44d6-9427-e7a5f16ceeeb",
"Configuration":0,
"Created":"2013-10-03T19:45:27",
"CustomMasterUrl":"/apppart/_catalogs/masterpage/app.master",
"Description":"",
"DocumentLibraryCalloutOfficeWebAppPreviewersDisabled":false,
"EnableMinimalDownload":false,
"Id":"2dbf86de-6538-4d1a-b4fe-2a8e9816d692",
"Language":1033,
"LastItemModifiedDate":"2013-10-03T19:45:30Z",
"MasterUrl":"/apppart/_catalogs/masterpage/app.master",
"QuickLaunchEnabled":true,
"RecycleBinEnabled":true,
"ServerRelativeUrl":"/apppart",
"SyndicationEnabled":true,
"Title":"apppart",
"TreeViewEnabled":false,
"UIVersion":15,
"UIVersionConfigurationEnabled":false,
"Url":"https://<site url>",
"WebTemplate":"APP"
},{
"__metadata":{
"id":"https://<site url>,
"uri":"https://<site url>,
"type":"SP.Web"
},
"FirstUniqueAncestorSecurableObject":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/FirstUniqueAncestorSecurableObject"}},
"RoleAssignments":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/RoleAssignments"}},
"AllProperties":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/AllProperties"}},
"AssociatedMemberGroup":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/AssociatedMemberGroup"}},
"AssociatedOwnerGroup":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/AssociatedOwnerGroup"}},
"AssociatedVisitorGroup":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/AssociatedVisitorGroup"}},
"AvailableContentTypes":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/AvailableContentTypes"}},
"AvailableFields":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/AvailableFields"}},
"ContentTypes":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/ContentTypes"}},
"CurrentUser":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/CurrentUser"}},
"DescriptionResource":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/DescriptionResource"}},
"EventReceivers":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/EventReceivers"}},
"Features":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/Features"}},
"Fields":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/Fields"}},
"Folders":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/Folders"}},
"Lists":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/Lists"}},
"ListTemplates":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/ListTemplates"}},
"Navigation":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/Navigation"}},
"ParentWeb":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/ParentWeb"}},
"PushNotificationSubscribers":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/PushNotificationSubscribers"}},
"RecycleBin":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/RecycleBin"}},
"RegionalSettings":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/RegionalSettings"}},
"RoleDefinitions":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/RoleDefinitions"}},
"RootFolder":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/RootFolder"}},
"SiteGroups":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/SiteGroups"}},
"SiteUserInfoList":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/SiteUserInfoList"}},
"SiteUsers":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/SiteUsers"}},
"ThemeInfo":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/ThemeInfo"}},
"TitleResource":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/TitleResource"}},
"UserCustomActions":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/UserCustomActions"}},
"Webs":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/Webs"}},
"WebInfos":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/WebInfos"}},
"WorkflowAssociations":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/WorkflowAssociations"}},
"WorkflowTemplates":{"__deferred":{"uri":"https://<site url>/TeamProjects/_api/Web/WorkflowTemplates"}},
"AllowRssFeeds":true,
"AppInstanceId":"00000000-0000-0000-0000-000000000000",
"Configuration":0,
"Created":"2014-02-28T21:41:11",
"CustomMasterUrl":"/TeamProjects/_catalogs/masterpage/seattle.master",
"Description":"",
"DocumentLibraryCalloutOfficeWebAppPreviewersDisabled":false,
"EnableMinimalDownload":true,
"Id":"3a37226d-8f0b-41bd-a720-6f63fd1e2abb",
"Language":1033,
"LastItemModifiedDate":"2014-02-28T21:41:23Z",
"MasterUrl":"/TeamProjects/_catalogs/masterpage/seattle.master",
"QuickLaunchEnabled":true,
"RecycleBinEnabled":true,
"ServerRelativeUrl":"/TeamProjects",
"SyndicationEnabled":true,
"Title":"Team projects",
"TreeViewEnabled":false,
"UIVersion":15,
"UIVersionConfigurationEnabled":false,
"Url":"https://<site url>/TeamProjects",
"WebTemplate":"STS"
},{
...
}
}]
}}