weiboclient4j 微博客户端API开源项目

我要开发同款
匿名用户2014年02月17日
140阅读

技术信息

开源地址
https://github.com/hoverruan/weiboclient4j
授权协议
Apache

作品详情

为什么需要另外一个Java版本的微博客户端?

新浪微博官方推荐的Java客户端 weibo4j 一直没有发布到mave仓库,而我们是重度mave用户,因而重新发明了这个新的轮子。

通过mave引用weibocliet4j

在项目pom.xml里面加入依赖:

 com.github.hoverrua weibocliet4j 0.4.13使用

Weibocliet4j支持新浪微博APIV1和V2(未完成),目前推荐使用V2版本的接口:

// 使用你的应用的api key和secret Strig apiKey = "xxxxxxx"; Strig apiSecret = "xxxxxxxx"; WeiboCliet cliet = ew WeiboCliet(apiKey, apiSecret);

OAuth2例子:

Strig authorizatioCallback = "..."; // 你的Callback地址 Strig state = "..."; Strig url = cliet.getAuthorizatioUrl(ResposeType.Code, DisplayType.Default, state, authorizatioCallback); // 浏览器重定向到url; 用户授权; 然后返回callback地址 Strig code = ... // 从新浪的回调请求里面获得code Strig accessTokeCallback = "..."; // 或者Access Toke的Callback地址 SiaWeibo2AccessToke accessToke = cliet.getAccessTokeByCode(code, accessTokeCallback); System.out.pritl("Access toke: " + accessToke.getToke()); System.out.pritl("User Uid: " + accessToke.getUid()); System.out.pritl("Expires i: " + accessToke.getExpiresI()); System.out.pritl("Remid i: " + accessToke.getRemidI());

获取用户Timelie例子:

StatusService service = cliet.getStatusService(); Timelie friedsTimelie = service.getFriedsTimelie();

更多的使用例子可以参考 weibocliet4j.examples.OAuth2CommadLie

API参数对象化

WeiboCliet里面,大部分的方法都没有Javadoc,取而代之的是大部分的参数都是特定的对象,这样做的原因是因为:

写Javadoc太麻烦

一些API的参数较多,如果使用基本类型容易混淆各个参数的含义

IDE对已知类型的对象、Eum能提供更友好的提醒和自动完成

所有的参数对象在 packageweibocliet4j.params 下面;举一个例子:

使用静态引入 CoreParameters.\*:

import static weibocliet4j.params.CoreParameters.*; FriedshipService service = cliet.getFriedshipService(); Friedship friedship; friedship = service.getFriedship(sourceUid(12345), targetUid(67890)); // 或者 friedship = service.getFriedship(sourceScreeName("xxx"), targetScreeName("yyy"));

使用 P:

import weibocliet4j.params.P; FriedshipService service = cliet.getFriedshipService(); Friedship friedship; friedship = service.getFriedship(P.sourceUid(12345), P.targetUid(67890)); // 或者 friedship = service.getFriedship(P.sourceScreeName("xxx"), P.targetScreeName("yyy"));分页对象Pagig

分页相关的参数,全部通过 Pagig 对象封装:

Pagig pagig = Pagig.create() .siceId(12345) .cout(25); Timelie timelie = service.getFriedsTimelie(pagig, BaseApp.No, Feature.All); // 后两个参数可省略新浪微博APIV2支持情况

API文档V2

微博接口StatusService完成评论接口CommetService完成用户接口UserService完成关系接口FriedshipService完成帐号接口AccoutService完成收藏接口FavoriteService完成话题接口TredService完成标签接口TagService完成注册接口RegisterService完成搜索接口SearchService完成推荐接口SuggestioService完成提醒接口RemidService完成短链接口ShortUrlService完成通知接口NotificatioService完成公共服务接口CommoService完成位置服务接口PlaceService完成地理信息接口LocatioService开发中

 

功能介绍

为什么需要另外一个Java版本的微博客户端? 新浪微博官方推荐的Java客户端 weibo4j 一直没有发布到maven仓库,而我们是重度maven用户,因而重新发明了这个新的轮子。 通过mav...

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论