Tags: ,,.

花了点时间研究了一下新浪微博的API,把新浪微博api的php demo整合到了codeigniter框架下,解决了以下几点:

  • php版本低于5.3,不能自动加载json函数,在CI的helper中加入json helper
  • CI的url结构不支持request,重写了获取oauth_verifier的方式,使用php自带函数$_SERVER['REQUEST_URI']
  • session没有使用CI的session类,仍旧使用php原始session

结合CI已有功能,就能方便与新浪微博联通了。

目前新浪微博API支持:

时间线

  • function public_timeline()
  • function friends_timeline()
  • function home_timeline()
  • function user_timeline( $page = 1 , $count = 20 , $uid_or_name = null )
  • function user_timeline( $uid_or_name )

微博

  • function mentions( $page = 1 , $count = 20 )
  • function update( $text )
  • function show_status( $sid )
  • function delete( $sid )
  • function destroy( $sid )

转发和评论

  • function repost( $sid , $text = false )
  • function send_comment( $sid , $text , $cid = false )
  • function comments_by_me( $page = 1 , $count = 20 )
  • function comments_timeline( $page = 1 , $count = 20 )
  • function get_comments_by_sid( $sid , $page = 1 , $count = 20 )
  • function reply( $sid , $text , $cid )

计数

  • function get_count_info_by_ids( $sids )

用户和关系

  • function show_user( $uid_or_name = null )
  • function friends( $cursor = false , $count = false , $uid_or_name = null )
  • function followers( $cursor = false , $count = false , $uid_or_name = null )
  • function follow( $uid_or_name )
  • function unfollow( $uid_or_name )
  • function is_followed( $uid_or_name )
  • function verify_credentials()

私信

  • function list_dm( $page = 1 , $count = 20 )
  • function list_dm_sent( $page = 1 , $count = 20 )
  • function send_dm( $uid_or_name , $text )
  • function delete_dm( $did )

收藏

  • function get_favorites( $page = false )
  • function add_to_favorites( $sid )
  • function remove_from_favorites( $sid )

在CI的controll中只需如下引用,就能轻松实现以上功能了:

$c = new WeiboClient( $this->config->item(‘WB_AKEY’) , $this->config->item(‘WB_SKEY’) , $_SESSION['last_key']['oauth_token'] , $_SESSION['last_key']['oauth_token_secret']  );
$ms  = $c->home_timeline();

Codeigniter(php框架)下的新浪微博api插件源码下载:下载代码

php源代码已经根据CI目录结构进行放置,下载后可以直接复制到application目录中使用。如有疑问欢迎微博@nickyhu


评论

该日志第一篇评论

发表评论

评论也有版权!