Spring Social Slideshare 简介

工程 | Josh Long | 2015年2月3日 | ...

这篇文章是由社区成员 Taday Tsuyukubo (@ttddyy)(Spring Social Slideshare 项目的创建者)撰写的客座文章。感谢 Taday!我希望看到更多这样的客座文章,因此 - 和往常一样 - 请随时 联系我!-Josh


Spring Social SlideshareSpring Social 生态系统中的社区模块之一。它是一个基于 Spring Social 框架构建的 Java 绑定,用于与 SlideShare REST API 进行交互。

Spring Social 模块提供了 ApiBinding 接口的实现,该接口将 Java 接口和具体实现类绑定到 REST API。按照惯例,接口的名称为目标服务,例如 GitHubLinkedInFacebook 等。实现类的形式为 *Template,例如:GitHubTemplateLinkedInTemplateFacebookTemplate。在 Spring Social Slideshare 中,有一个 Slideshare 接口和 SlideshareTemplate 实现类。您可以使用 Spring 将 SlideshareTemplate 注入到您的服务中。或者,如果您选择这样做,您可以直接实例化 SlideshareTemplate 并从 Spring 的 DI 之外与 SlideShare API 进行交互。

创建 SlideShare 实例

您需要 申请 SlideShare API 密钥。提交申请表单后,您将收到一封包含“API 密钥”和“共享密钥”的电子邮件。您需要这两个密钥才能访问 SlideShare API。

这是模块与 SlideShare API 交互的核心部分。

SlideShare slideshare = new SlideShareTemplate("api_key", "shared_secret");
SlideshowOperations slideshow = slideshare.slideshowOperations();

现在您可以通过 slideshow 实例执行幻灯片相关操作。

检索特定的 Slideshow

可以通过幻灯片 ID 或 URL 检索特定的幻灯片。

// get a slideshow "Booting up Spring Social"
Slideshow show = slideshow.getSlideshowById("41084028");

// By url
Slideshow show =  slideshow.getSlideshowByUrl(
  "http://www.slideshare.net/SpringCentral/booting-up-spring-social");

您可以使用许多不同的属性,包括幻灯片的 idurltitledescriptioncreatedusernamedownloadUrl。如果要将演示文稿嵌入 HTML 中,请使用 embed 属性。

此外,您还可以按用户、标签或组检索幻灯片。

GetSlideshowsResponse response;

// by user
response = slideshow.getSlideshowsByUser(
  "SpringCentral", FETCH_SIZE);

// you can also specify offset and detailed flag
response = slideshow.getSlideshowsByUser("SpringCentral",
  FETCH_SIZE, offset, true);

// by tag or group
response = slideshow.getSlideshowsByTag("spring", FETCH_SIZE);
response = slideshow.getSlideshowsByGroup("group_name", FETCH_SIZE);

// You can print the `count` and `name`
List<Slideshow> shows = response.getSlideshows();    // list of slideshows

执行搜索

您可以按关键字搜索幻灯片。

SearchSlideshowsResponse response;
response = slideshow.searchSlideshows("spring");

// paginated access
int page = 3;
int itemsPerPage = 20;
response = slideshow.searchSlideshows("spring", page, itemsPerPage);

List<Slideshow> shows = response.getSlideshows();

每个响应都具有 numResultstotalResults 属性,它们分别为您提供返回的结果数和结果集合的总结果数。

创建和上传演示文稿

您可以通过指定 java.io.FileString 和 Spring 的 Resource 层次结构的实现来上传演示文稿。

注意:SlideShare API 需要上传操作的额外权限。请参阅 “SlideShare API 文档”,了解如何在您的开发帐户上请求上传权限。


File file = new File( "path_to_your_presentation_file");
String uploadedShowId = slideshow.uploadSlideshowFromFile(
  username, password, file, "My Title", "My Description");

// Other API to upload slideshows
//   slideshow.uploadSlideshowResource(...)
//   slideshow.uploadSlideshowFromContent(...)
//   slideshow.uploadSlideshowFromUrl(...)

您也可以修改幻灯片的信息。


List<String> tags = Arrays.asList("spring", "social");
PrivacySetting privacy = new PrivacySetting();
privacy.setMakeSlideshowPrivate(false);    // make slideshow public

String editedShowId = slideshow.editSlideshow(username, password,
    "01234", "New Title", "New Desc", tags, privacy);

您可以简单地按 ID 删除幻灯片。

String deletedShowId = slideshow.deleteSlideshow(username, password, "01234");

接下来是什么?

SlideShare API 提供了四个功能领域,支持幻灯片、用户、收藏夹和潜在客户/活动操作。当前版本的 Spring Social Slideshare 仅支持特定于幻灯片的操作。

该项目正在发展。请随时 联系我在 GitHub 上创建问题或发送针对特定改进的拉取请求。

总结

如果您的应用程序需要与 SlideShare 集成,Spring Social Slideshare 是一种简单且熟悉的方法。我创建了一个 示例项目,该项目演示了本文中解释的基本操作。从这里开始。感谢您阅读这篇文章。

获取 Spring 电子邮件简报

通过 Spring 电子邮件简报保持联系

订阅

领先一步

VMware 提供培训和认证,帮助您加速进步。

了解更多

获取支持

Tanzu Spring 在一个简单的订阅中提供 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

查看 Spring 社区中所有即将举行的活动。

查看全部