首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

使用 Digg REST API(3)Digg API 是什么?

使用 Digg REST API(3)Digg API 是什么?

Digg API 是什么?Digg API 是 Digg 提供的一个服务,允许 Web 开发人员以编程方式访问 Digg 信息。可以将它看作一个软件,它从 Digg 抽取关键数据,以便数据可以任何格式显示在一个完全独立的 Web 页面上。
Digg API 接受 REST 请求。有关这方面的更多信息,请参见 。响应格式取决于单个开发人员,但是仅限于 XML、JavaScript Serialized Object Notation (JSON)、JavaScript 和序列化 PHP。所有响应都是 8 位 UCS/Unicode Transformation Format (UTF-8)。
响应一旦收到,就由开发人员来根据需要为独立的 Web 应用程序解析和使用该响应。
可以将 Digg API 用于商业用途,只要遵循许可协议即可。
使用 Digg REST API跟社会媒体领域的大多数 API 一样,Digg 很容易使用。即使您在上述技术方面的经验有限,也可以毫无困难地实现简单的 Digg API 调用。
一个简单的例子考虑下面这个简单的例子:
http://services.digg.com/1.0/endpoint?method=story.getPopular
您可以简单地将它插入到您喜爱的浏览器的 URL 栏中,并按 Enter。几秒钟之后,应该在屏幕上看到类似于  的 XML 输出。(注意:在清单 1 中,由于格式化约束,thumbnail 元素上 src 属性的值分成了几行。它其实应该是单个字符串:src="//digg.com/movies/The_real_incredibly_mundane_reason_Darth_Vader_wears_a_mask/t.jpg"
清单 1. 一个简单的例子:输出
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<story link="http://scifiwire.com/2009/11/the-real-incredibly-munda.php"
submit_date="1259092461" diggs="52" id="17390757"
comments="2"
href="http://digg.com/movies/The_real_incredibly_mundane_reason_Darth_Vader_wears_a_mask"
promote_date="1259150128" status="popular" media="news">
  <description>Darth Vader is one of the coolest --and coolest-looking-- characters in
science fiction, yet much of his appearance was the result of
nothing more than practicality. At least that's how
Ralph McQuarrie, the legendary conceptual designer of George
Lucas' original Star Wars films, remembers the evolution of the
Sith's darkest Dark Lord</description>
  <title>The real, incredibly mundane reason Darth Vader wears a mask</title>
  <user name="mklopez" registered="1121877948" profileviews="128127"
icon="http://digg.com/users/mklopez/l.png" />
  <topic name="Movies" short_name="movies" />
  <container name="Entertainment" short_name="entertainment" />
  <thumbnail originalwidth="550" originalheight="324"
contentType="image/jpeg" src="//digg.com/movies/
          The_real_incredibly_mundane_reason_Darth_Vader_wears_a_mask/t.jpg"
width="80" height="80" />
  <shorturl short_url="http://digg.com/d31Ay85" view_count="210" />
</story>




您的响应会包含比  中更多的内容。为节省空间,该清单进行了缩减。
首先注意,响应是 XML 格式的。这是默认格式,除非您指定了另外的返回格式。
大多数属性和子元素都是自解释的。但是我们这里将做简要介绍。
story 元素本身代表 Web 上一篇被 dugg 的文章。关于这篇文章的所有相关信息都表示为属性或子元素。
顾名思意,link 属性是文章本身的实际 URL。这代表一个到文章的永久链接。换句话说,URL 应该永远是指向 story 表示的文章的指针。
submit_date 属性表示文章提交到 Digg 的日期。这用 UNIX® 时间或者自 1970 年 1 月 1 日以来的秒数表示。
diggs 属性表示文章被赞成的次数。这是一个净值,也就是说它实际表示总赞成次数减去总反对次数。
id 属性是文章的 Digg 识别号。
comments 属性表示与文章相关的评论次数(在 Digg 站点本身上)。
href 属性表示指向 Digg 上的文章引用的永久链接。这与 link 的区别是,link 指向文章实际驻存的站点上的文章,而 href 指向该文章的 Digg 表示。
promote_date 属性是文章在 Digg 中被提升的日期(同样,是 UNIX 时间)。换句话说,这是文章最后一次等级升高的时间。
status 属性表示文章的当前状态。本例中的值是 popular,因为在编写本文时,这篇文章是 Digg 上最流行的文章之一。状态为 popular 的文章出现在 Digg 主页上。
media 属性表示文章的类型。在本例中,是一篇新闻文章。
description 元素提供文章的一个简要大纲。从而,Digg 用户可以查看文章的摘要,决定是否要看整篇文章。
title 元素提供文章的标题。
user 元素提供关于将文章提交到 Digg 的用户的信息。注意,该元素的属性提供关于用户的关键信息,比如说用户注册到 Digg 的日期,用户简介被查看了多少次,以及用户图标的 URL。
topic 元素提供与此文相关的主题的信息。本例中的主题是 Movies。注意,尽管没有用 XML 格式表示,主题实际上是 container 种类的子元素。
正如刚才所述,container 元素是 topic 元素的逻辑父元素。本例中的容器是 Entertainment。
thumbnail 元素提供关于显示在 Digg 项旁边的缩略图的关键信息。如果您现在马上进入 http://www.digg.com,几乎可以肯定能够看到很多旁边有缩略图的 Digg 项。该元素提供关于这些图像的信息,其中最重要的是图像本身的 URL。
shorturl 元素提供此文章的一个简短 URL。对于您想要将 URL 提交到 Twitter,这是很方便的。Twitter 对每个 tweet 只支持非常有限的字符数。
一个简单的更改举例来说,假设您非常喜欢这个故事,因此还想看 Entertainment 容器中的其他故事。幸运的是,Digg 为这个目的提供了一个 API。
考虑下面这个 URL:
http://services.digg.com/1.0/endpoint?method=story.getPopular&container=Entertainment
这将检索该种类(本例中是 Entertainment)中最近收到足够 Digg 而成为 “流行” 的一系列故事。如果将该 URL 插入浏览器中并按 Enter,将会看到一系列来自 Entertainment 容器的 Digg 文章。
返回列表