最近比较忙

  有几天没有写博客了,最近几天比较忙,今天总结一下。

  我们公司有一个产品叫微会议,它里面调用了新浪微博的接口。

  先说一下新浪开放平台吧,新浪对于微博,暴露出了一些rest风格的接口,然后提供了一个api,当然也是基于rest风格的,而且提供了很多语言的实现,其中就包括java的实现,并提供相应的sdk供开发者下载使用。如果一个应用想要使用微博接口,需要先在开放平台上申请开发者的资格,然后创建一个应用,并需要填写一些基本的信息,这些东西经过新浪的审核后,开发者才可以使用微博的接口。

  而以前新浪提供的微博登录方式有两种,一种是Xauth,一种是oauth,其中xauth可以直接在应用内登录,而oauth需要先跳转到新浪的认证界面,输入正确的用户名和密码后才可以。而这个oauth的版本是1,后来新浪把这种方式改为oauth2了,其中很多借口都进行了修改。

  我们公司对新浪提供的sdk进行了再一次的包装,并以jar包的形式放到maven仓库中,如果项目中要使用的话,直接在pom文件中添加依赖就可以了,以前这个接口是公司其他人写的,现在那个同事有其他项目要做,所以重新修改接口的任务落到了我的头上,于是开始研究新浪的微博api。

  刚开始的时候比较困难,很多东西需要知道,后来好多了,自己能根据它提供的rest风格的请求来用java封装。

  在修改的过程中遇到的问题就是,因为所有的接口都需要传一个token,之前这个token是不过期的,所以可以在应用中写一个固定的token,然后,所有的接口都调用这一个token就可以了,但是现在新浪让这个token有一个过期时间,它是随着开发者申请的等级来变化的,普通等级的开发者token的有效期是7天,所以这时候就不能写死了,不然会报token失效的错误。

  另一个问题就是,对于一些高级的微博接口,比如说获取某个话题下的微博列表,这个接口是需要去授权的,就是不光是去的token这么简单,还需要先转到新浪的授权界面,进行授权后,才可以调用。但是一个应用只能填写一个回调地址,这个回调地址在微会议做完后进行了改动,所以现在就不能使用了。当然,一些接口现在也调用不了了,需要重新让一个应用上线。

  这就是这几天忙的事情,不过好在已经改完了,部署到服务器了,还是学到不少东西的,最起码以后比如说新浪又增加新的接口,需要封装的时候,我也能做这样的工作了。

posted @ 2012-11-07 10:46  寒剑飘香  阅读(173)  评论(0)    收藏  举报