利用Google+ API和PHP在Google+上检索帖子并查找用户

Google+ 是社交网络行业的新产品,是 Google 构建社交网络的最新尝试,可让用户轻松地与好友共享新闻和文件,并与他们进行互动。它似乎成功抓住了公众的想象力。据报道,截止 2011 年 12 月,每天都有 625,000 个新用户注册 Google+,用户总数已达到 6200 万。

Web 开发人员有理由对 Google+ 感到兴奋。与其他许多 Google 服务一样,Google+ 随附提供了一个开发人员 API,允许您通过自己的自定义应用程序访问用户生成的内容。由于 API 以 JSON 形式提供其输出,因此它可以轻松与大多数编程工具包进行集成。

本文将介绍 Google+ Data API,了解如何使用它从 Google+ 提取内容,以及如何将它集成到 PHP 应用程序中。(这非常有趣,因此要预先警告您可能会沉溺于它。)

API 的基础知识

在使用 Google+ 开始开发应用程序之前,您需要了解它的工作原理。API 通过 HTTP 工作,并希望获得一个到指定端点的 HTTP 请求。收到此请求后,API 服务器会使用一个包含请求数据的 JSON 提要来响应查询。然后,可以使用服务器端编程语言(比如 PHP 或 Perl)或客户端工具包(比如 jQuery 或 mooTools)解析这些数据,并从中提取内容,以便将它集成到 Web 页面中。

首先您需要做几件事:

设置 Google+ 帐户。 登录 Google Account 并使用主菜单中的 "+You" 链接注册一个 Google+ 帐户。 转到 Google Account Settings 页面,检索您个性化的 Google Profile URL,该 URL 包含您的 Google ID,如 图 1 所示。 认真地记录此 ID;本文中的一些示例需要使用它。 图 1. 带有 Google ID 的 Google Profile URL

激活您 Google+ 帐户的 API 访问。 浏览到 Google APIs Console,创建一个新项目。 为您的新项目激活 Google+ API。 您将会收到一个自动生成的 API 密钥,您可以使用它来访问 API。该密钥位于 Google APIs Console 的 API Access 选项卡下,如 图 2 所示。 认真地记录您的 API 密钥。 图 2. 具有 API 访问密钥的 Google API Console

您还可以使用 OAuth 访问 Google+ API。(OAuth 的讨论不在本文的讨论范围之内。)

获得了 Google+ ID 和 API 密钥后,在您的浏览器中尝试请求 API 端点 https://www.googleapis.com/plus/v1/people/ID/activities/public?key=API-KEY 。记住使用您刚获得的值替换请求中的 ID 和 API-KEY 占位符。您可以在生成页面的源代码中查看请求的响应,请求响应将包含一个最新的 Google+ 帖子列表。它类似于 清单 1。惟一标识符已经变得有些模糊。

清单 1. JSON 格式的 Google+ 活动提要示例

{ "kind": "plus#activityFeed", "etag": "ab49djslas22", "next
PageToken": "eJxtbiSnOTUova1kyV5Z7y", "selfLink": "https://www.googleapis.com/plus/v1/people/ID/activities/public?", "nextLink": "https://www.googleapis.com/plus/v1/people/ID/activities/ public?maxResults=20&pageToken=", "title": "Plus Public Activity Feed for John Doe", "updated": "2012-01-17T06:05:03.277Z", "id": "tag:google.com,2010:/plus/people/ID/activities/public", "items": [ { "kind": "plus#activity", "etag": "abc", "title": "Sleepy at work", "published": "2012-01-17T06:05:03.000Z", "updated": "2012-01-17T06:05:03.277Z", "id": "zab", "url": "https://plus.google.com/ID/posts/XgGBBbn", "actor": { "id": "ID", "displayName": "John Doe", "familyName": "Doe", "givenName": "John", "url": "https://plus.google.com/ID", "image": { "url": "https://lh5.googleusercontent.com/9HzARk/Cxo/photo.jpg?sz=0" } }, "verb": "post", "object": { "objectType": "note", "content": "Sleepy at work", "originalContent": "", "url": "https://plus.google.com/ID/posts/XgGBBbn", "replies": { "totalItems": 0, "selfLink": "https://www.googleapis.com/plus/v1/activities/xys/comments" }, "plusoners": { "totalItems": 0, "selfLink": "https://www.googleapis.com/plus/v1/activities/xys/people/plusoners" }, "resharers": { "totalItems": 0, "selfLink": "https://www.googleapis.com/plus/v1/activities/xys/people/resharers" } }, "provider": { "title": "Google+" }, "access": { "kind": "plus#acl", "items": [ { "type": "public" } ] } }, { ... } ]}

Google+ API 使用包含请求数据的 JSON 提要来响应请求。Google+ 提供了几个有趣的提要,其中包括:

活动提要,包括某个特定用户发布的所有公共帖子。 Per-activity 评论提要,包括一系列对某个活动的用户评论。 Person 提要,包括一系列用户匹配指定关键字或活动。

上述提要需要使用 API 密钥或 OAuth 令牌进行身份验证。

提要本身的格式为 JSON 文档,最外层的密钥包含提要结果集的标题和当前页面的 URL(以及在适用情况下,下一页和上一页)。items 数组包含一个资源集。根据请求的提要,资源可能是活动、个人资料或评论。集合中的每一项都包含有关资源的详细信息,包括:

资源的公共 URL 资源类型和资源 ID 作者 发布日期

根据资源类型,可能会包含更多信息,比如:活动内容、个人资料描述、作者图像、回复数量、共享和 +1s,或者是附件及其内容。您将在本文后面看到这些内容的示例。

目前,Google+ API 是只读的。您可以从中检索信息,但是目前 API 不支持写操作,比如发布新活动或评论,更新作者信息或照片,或者是删除活动。

在第三方应用程序中使用 Google+ 内容受 Google+ 服务条款的约束。您的应用程序应当遵循 Google+ Developer Policies。在开发前,花几分钟时间阅读一下这些文档是值得的,可确保您遵循所有必要规则。

时间: 2024-09-27 23:30:16

利用Google+ API和PHP在Google+上检索帖子并查找用户的相关文章

利用google api生成二维码名片

 二维条码/二维码可以分为堆叠式/行排式二维条码和矩阵式二维条码.堆叠式/行排式二维条码形态上是由多行短截的一维条码堆叠而成:矩阵式二维条码以矩阵的形式组成,在矩阵相应元素位置上用"点"表示二进制"1",用"空"表示二进制"0","点"和"空"的排列组成代码. 堆叠式/行排式二维条码,如,Code 16K.Code 49.PDF417等. 矩阵式二维码,最流行莫过于QR CODE. 矩阵

利用google api生成二维码名片例子

二维条码/二维码可以分为堆叠式/行排式二维条码和矩阵式二维条码.堆叠式/行排式二维条码形态上是由多行短截的一维条码堆叠而成:矩阵式二维条码以矩阵的形式组成,在矩阵相应元素位置上用"点"表示二进制"1",用"空"表示二进制"0","点"和"空"的排列组成代码. 堆叠式/行排式二维条码,如,Code 16K.Code 49.PDF417等. 矩阵式二维码,最流行莫过于QR CODE. 矩阵式

android开发google map申请不到google map 的api key

问题描述 android开发google map申请不到google map 的api key 本地的MD5指纹已经获取到了,可是在google网站上申请google map api key时遇到了问题.去网上搜索了下,说申请google map api key的新网址是https://developers.google.com/android/maps-api-signup?hl=zh-CN,可是直接转到了一个duocumentation页面,在上面逛了半天没有找到头绪.恳请各位大神帮忙,告知

Android BLE与终端通信(五)——Google API BLE4.0低功耗蓝牙文档解读之案例初探

Android BLE与终端通信(五)--Google API BLE4.0低功耗蓝牙文档解读之案例初探 算下来很久没有写BLE的博文了,上家的技术都快忘记了,所以赶紧读了一遍Google的API顺便写下这篇博客心得 Google API:http://developer.android.com/guide/topics/connectivity/bluetooth-le.html#terms 其实大家要学习Android的技术,Google的API就是最详细的指导书了,而且通俗易懂,就算看不懂

用Google API 提取名片信息

介绍 我们每个人或多或少都会使用到名片.但是如果名片数量一大,管理它们就显得非常麻烦.因此我产生用这篇文章的案例来管理他们. 这里,我先用手机对每张名片拍照,并按以下流程进行处理: 把获得的名片图像交给我们的应用程序,抽取人名,公司名称,地址等信息.这里我使用了Google Vision API 和 自然语言(Natural Language )API,因为这两个API简单易用,并且性能也很不错. 我使用Python来编写我的这个应用程序,来调用 Google Vision API 和 Natu

Google API提供的网页设计常用字体

我们在设计网页时会使用一些常用的字体,对于一些并不常用的字体则会通过图片来代替,通过Google API提供的字体我们可以不需要任何图片,而使用一些并不常用的字体,当用户打开网页时会通过Google服务器链接到这些字体,从而让网页显示出来,过程中用户不会感到任何不适. 对很多纠结于字体的 Web 设计与开发者而言,昨天有关 Google Font API 的新闻着实让他们高兴了一回,这个非常简单实用的 API 包含了一套字体库和预览工具,结合 Google 与 TypeKit 联合开发的开源 W

利用arcgis api for javascript实现在地图上点的弹出(我的信息弹出不了)

问题描述 利用arcgis api for javascript实现在地图上点的弹出(我的信息弹出不了) 2C <!DOCTYPE html> Simple Map <style> html body #map { height: 100%; width: 100%; margin: 0; padding: 0; } body { background-color: #FFF; overflow: hidden; font-family: ""Trebuchet

使用google API收不了gmail邮件

问题描述 packagecom.michael.cd.steam.test;importjava.io.IOException;importorg.junit.Test;importcom.google.api.client.http.BasicAuthentication;importcom.google.api.client.http.HttpRequestInitializer;importcom.google.api.client.http.HttpTransport;importcom

android通过google api获取天气信息示例_Android

android通过google API获取天气信息 复制代码 代码如下: public class WeatherActivity extends Activity { private TextView txCity; private Button btnSearch; private Handler weatherhandler; private Dialog progressDialog; private Timer timer;    /** Called when the activit