6

我一直在寻找有关称为 OpenSocial 的一组标准的确切用法的一些解释。

如果我可以像下面这样使用 OpenSocial,我需要澄清一下。

我想创建一个用于使用 OpenSocial api 进行社区的库,用于我的网站,它不会像 facebook 和 myspace 等常见网站所描述的应用程序那样“表现”。我不是在创建 Facebook 应用程序的 myspace,而是在创建自己的网站,我希望用户能够找到朋友。

我想允许用户存储各种 OpenSocial 支持的社交网络的用户名和密码。我还想使用 api 将事件从我的网站同步到他们指定的社交网络。我还想让我的用户查看朋友列表并邀请他们。

是否可以创建一个支持 OpenSocial 的库和简单的“指向”以及支持它的社交网络来获取朋友列表等?

4

1 回答 1

5

许多 OpenSocial 容器(社交网站)支持 REST 和/或 RPC 方法,可用于访问朋友列表、发布活动等。已经编写了几个客户端库来使用这些 API ( http://wiki.opensocial.org /index.php?title=Client_Libraries)。可以使用客户端库创建一个站点,该站点允许您使用受支持的 OpenSocial 网络上的帐户登录并获取您的朋友列表。

但是,无法通过存储用户名和密码并将其发送到社交网站来针对 OpenSocial API 进行身份验证。这被认为是一种糟糕的设计模式,不鼓励这样做。相反,OpenSocial 支持 3-legged OAuth,这涉及将用户重定向到他们输入凭据的社交网络,并使用可用于访问用户数据的令牌重定向回您的站点。

请注意,并非每个站点都支持 3-legged OAuth,尽管至少 MySpace、iGoogle、hi5 和 Netlog 现在都支持。

一旦通过身份验证,您将能够从几乎任何网络获取数据。某些网络支持发回活动,但目前并非所有网络。

这种方法确实需要您在要支持的每个社交网络上注册您的网站,这可能是一个扩展问题。为了尝试解决这个问题,Google 发布了 Google 朋友群,它将来自各种网络的 OpenSocial API 联系在一起,为您提供一个更易于编程的界面(完全披露:我是 Google 员工,不时使用 Google 朋友群) . 今年我在 Google I/O 上发表了一次演讲,描述了与可能有帮助的网站的这种集成。(由于我目前仅限于在我的帖子中发布单个链接,因此它位于 http 冒号斜杠 slash code.google.com/events/io/sessions/BeyondCutPasteGoogleFriendConnect.html)

如果您还有其他问题,我很乐意进一步详细说明。

于 2009-09-10T17:52:37.857 回答