使用 SharePoint 中的社交源
了解在 SharePoint 中使用社交源和微博帖子所需执行的常见编程任务。
用于在 SharePoint 中使用社交源的 API
在 SharePoint 本地场中,交互式社交源旨在鼓励人们共享信息,彼此互动交流。 用户个人网站的“新闻源”页面上有许多源功能。 源包含各组表示微博帖子、对话、状态更新和其他通知的线程。
SharePoint 提供了以下 API,可用于以编程方式使用社交源:
托管代码的客户端对象模型
.NET 客户端对象模型
Silverlight 客户端对象模型
移动设备客户端对象模型
JavaScript 对象模型
代表性状态传输 (REST) 服务
服务器对象模型
作为 SharePoint 开发中的最佳实践,在可能的时候使用客户端 API。 客户端 API 包括客户端对象模型、JavaScript 对象模型和 REST 服务。 有关 SharePoint 中的 API 以及何时使用它们的详细信息,请参阅 在 SharePoint 中选择正确的 API 集。
每个 API 都包括您用于执行与订阅源相关的核心任务的管理器对象。 表 1 显示了这些 API 中的管理器和其他关键对象(或 REST 资源)以及可在其中找到 API 的类库(或终结点 URI)。
注意
Silverlight 和移动客户端对象模型未明确记载在表 1 或表 2 中,因为它们提供了与 .NET 客户端对象模型相同的核心功能,并使用相同的签名。 Silverlight 客户端对象模型在 Microsoft.SharePoint.Client.UserProfiles.Silverlight.dll 中进行定义,而移动客户端对象模型在 Microsoft.SharePoint.Client.UserProfiles.Phone.dll 中进行定义。
表 1. 用于以编程方式处理社交源的 SharePoint API
如果使用服务器对象模型来访问源内容,并且代码未在 SharePoint 实例中运行, (换句话说,如果扩展未安装在应用程序服务器的 LAYOUTS 文件夹中) ,请在代码中使用 SPServiceContextScope 对象。 以下代码示例显示了一种将 SPServiceContextScope 对象合并到代码中的方法。
using (SPSite site = new SPSite(<siteURL>))
{
using (new Microsoft.SharePoint.SPServiceContextScope(SPServiceContext.GetContext(site)))
{
// code
}
}
在 SharePoint 中使用社交源所需执行的常见编程任务
表 2 显示了处理好友动态订阅源的一般编程任务及您用于执行这些任务的成员。 这些成员来自 .NET 客户端对象模型 (CSOM)、JavaScript 对象模型 (JSOM)、REST 服务和服务器对象模型 (SSOM)。
表 2. 用于在 SharePoint 中使用社交源的常见编程任务的 API
注意
REST 示例中的 domain\user 占位符值应替换为实际用户的帐户名称。 若要了解如何在请求正文中传递 REST 参数,请参阅社交源 REST API 参考中的示例。
SharePoint 不提供用于直接自定义微博帖子的布局或呈现的 API。 SharePoint 仅提供数据,支持跨平台和跨设备客户端应用定义适合其外形规格和需求的布局。 在 SharePoint 开发中,可以在客户端呈现中使用 JavaScript 替代,如使用客户端呈现 在 SharePoint 外接程序中自定义列表视图中所述。
“我的网站”社交 API 中的源类型概述
订阅源类型表示订阅源数据的类型。 检索当前用户的订阅源时,您可以指定以下订阅源类型:
个人源包含用户的帖子和最新动态。 在“我的网站”上,此源显示在用户的“本人简介”页面上。
新闻源包含当前用户以及用户关注人员和内容的帖子和最新动态。 检索新闻源类型时,请使用 ByModifiedTime 排序选项,获取用户关注人员的最新(已缓存)活动。 在“我的网站”上,此源显示在用户的“新闻源”页面上。
Timeline 包含当前用户以及该用户关注的好友和内容所生成的文章和更新。 当您想要从特定时间范围馈入数据时或您想要使用 ByCreatedTime 选项(该选项包括好友的最大抽样)进行分类时, Timeline 特别有用。
赞源包含具有 PostReference 属性的引用线程,此属性表示当前用户使用赞属性标记的帖子。
Everyone 包含来自当前用户的整个组织的线索。
服务器、客户端和 JavaScript 对象模型提供您可用于检索当前用户的任何订阅源类型的 GetFeed 方法和您可用于检索特定用户的 Personal 订阅源类型(仅)的 GetFeedFor 方法。 两种方法都将 SocialFeedOptions 对象视作参数,您可用其指定基于时间的分类顺序、日期范围和要返回的最大线索数量。
注意
REST 服务提供不同的资源来检索各个源类型,如表 2 所示。
如果一个线程包含两个以上的答复,服务器将返回只包含两个最新答复的线程摘要。 (Thread 摘要应用 了 IsDigest 线程属性。) 如果要获取线程中的所有答复,请从源管理器对象调用 GetFullThread 方法并传入线程标识符。
另请参阅
概念性和帮助文章
API 参考文档
Microsoft.SharePoint.Client.Social (客户端对象模型)
SP.Social 命名空间(JavaScript 对象模型)
Microsoft.Office.Server.Social (服务器对象模型)