IT技术博客大学习 共学习 共进步

新浪微博开放平台初探

方糖气球 2010-03-11 00:03:09 浏览 4,426 次

前几天新浪微博开始邀请合作伙伴,对外接口开始开放.于是我申请到了一个账号.

网站结构

新浪开放平台的域名为open.t.sina.com.cn,目前采用了密码保护,需要先联系相关人员获得密码.

开放平台网站分为两部分,一部分是文档,采用wiki程序组织;一部分是应用的设置和查看界面.

应用的查看部分显示了APP Key和应用用户数.

应用设置页面,是个人信息和应用基本信息设置.

平台接口

接口特点

微博平台采用REST风格的接口,查询类接口要求用GET,发布类接口要求用POST.返回的数据格式有xml和json两种.

REST接口本身有频率限制:

默认REST API的访问限制是每小时150次,限制分用户和IP, 未授权的访问次数限制主要针对IP,登录后的请求访问限制主要针对用户。
访问限制主要针对HTTP GET请求。发表操作(如发微博)通常是POST操作而不受此限制。 详细限制情况:
请求限制:普通调用限制每小时150次
发表微博:单用户每小时最大30次
发表评论:单用户每小时最大60次
发表私信:单用户每小时最大60次
添加关注:每小时最多添加关注60个

默认REST API的访问限制是每小时150次,限制分用户和IP, 未授权的访问次数限制主要针对IP,登录后的请求访问限制主要针对用户。访问限制主要针对HTTP GET请求。发表操作(如发微博)通常是POST操作而不受此限制。 详细限制情况:请求限制:普通调用限制每小时150次发表微博:单用户每小时最大30次发表评论:单用户每小时最大60次发表私信:单用户每小时最大60次添加关注:每小时最多添加关注60个

授权等级

微博平台对应用的授权分为多个级别,不同的级别查询的频率有所不同.

普通授权:150次/小时/用户
初级授权:500次/小时/用户
高级授权:1500次/小时/用户
新浪合作伙伴:无限制

认证方式

微博平台支持两种认证方式.

一种是Apache的Basic认证,在你请求接口时把用户名和密码带过来;
一种是Oauth认证.Oauth认证不需要用户提供密码,更加安全.

一个简单的调用例子(取得用户所关注的人的最新微博):

curl -u name:password -d "source=APPKEY" http://api.t.sina.com.cn/statuses/friends_timeline.json

SDK

微博在网站上提供了AS3的SDK.

另外提供了一个修改版本的dabr作为php的示范程序.

Oauth的通用库也添加了一些链接.

另外,我自己写按平台的接口封装了一个简单的PHP Class,目前只支持status相关(详见后边的接口列表)的接口.有兴趣的同学也可以拿去用.

接口分类和列表

获取下行数据集接口

微博访问接口

用户接口

私信接口

关注接口

Social Graph接口

账号接口

收藏接口

登录/OAuth接口

另外搜索接口貌似已经在准备中了.

整体上讲微博开放的接口还算细,用户资料和好友关系也开放了.接下来就是如何进行应用和平台的mash up了.

建议继续学习

  1. Twitter/微博客的学习摘要 (阅读 12,084)
  2. 微博架构与平台安全演讲稿 (阅读 5,623)
  3. 基于PECL OAuth打造微博应用 (阅读 5,103)
  4. 微博进入肉搏时代 (阅读 5,105)
  5. 给微博打上标签 (阅读 4,763)
  6. 构建可扩展的微博架构(qcon beijing 2010演讲) (阅读 4,163)
  7. 背水一战的新浪 (阅读 3,945)
  8. 新浪的触顶与腾讯的逆袭 (阅读 3,943)
  9. 微博,将让新浪血尽而死 (阅读 3,824)
  10. 不一样的交互组件(中) (阅读 3,706)