Java新浪微博客户端开发***步
一、获得开发应用所需的“通行证”App Key和App Secret
首先必须要有新浪的账号。再打开http://open.weibo.com/登录你的账号。
点击“我是开发者”:
点击“创建应用”:
点击“客户端”:
这时,会弹出一个填写开发者信息的页面:
填写完再验证完邮箱,来到创建应用的页面:
点击“应用信息”下的“基本信息”,找到AppKey和AppSecret。(等下要在config.properties中使用到。)
设置回调地址(等下要在config.properties中使用到。),可以随便设置,我这里设置为“百度”:
二、下载SDK
接着:到http://open.weibo.com/wiki/SDK下再所需的SDK,这里是以Java为例:
可以直接到http://code.google.com/p/weibo4j/中下载到所需的JavaSDK。
将SDK导入到你所建立的,要进行开发客户端的Java项目中,点击文件“config.properties”如下:
在其中填写:
三、获取当前用户信息及发布一条微博的简单示例:
在AccessToken中添加方法:
- public String getUid() {
- return uid;
- }
***修改OAuth4Code代码如下:
- package weibo4j.examples.oauth2;
- import java.io.BufferedReader;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import weibo4j.Oauth;
- import weibo4j.Timeline;
- import weibo4j.Users;
- import weibo4j.Weibo;
- import weibo4j.http.AccessToken;
- import weibo4j.model.User;
- import weibo4j.model.WeiboException;
- import weibo4j.util.BareBonesBrowserLaunch;
- public class OAuth4Code {
- public static void main(String[] args) throws WeiboException, IOException {
- Oauth oauth = new Oauth();
- BareBonesBrowserLaunch.openURL(oauth.authorize("code"));
- System.out.println(oauth.authorize("code"));
- System.out.print("Hitenter when it's done.[Enter]:");
- BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
- String code = br.readLine();
- Log.logInfo("code:" + code);
- AccessToken accessToken = null;
- try {
- accessToken = oauth.getAccessTokenByCode(code);
- } catch (WeiboException e) {
- if (401 == e.getStatusCode()) {
- Log.logInfo("Unableto get the access token.");
- } else {
- e.printStackTrace();
- }
- }
- String access_token = accessToken.getAccessToken();
- Weibo weibo = new Weibo();
- weibo.setToken(access_token);
- String uid = accessToken.getUid();
- Users um = new Users();
- try {
- User user = um.showUserById(uid);
- // 获取当前用户的信息
- System.out.println("当前用户的名字:" + user.getName());
- System.out.println("当前用户所发的微博数:" + user.getStatusesCount());
- System.out.println("当前用户关注数:" + user.getFriendsCount());
- System.out.println("当前用户粉丝数:" + user.getFollowersCount());
- } catch (WeiboException e) {
- e.printStackTrace();
- }
- // 测试发送微博
- Timeline tm = new Timeline();
- System.out.print("请输入所要发的微博的文本内容:[Enter]:");
- br = new BufferedReader(new InputStreamReader(System.in));
- String newStatus = br.readLine();
- tm.UpdateStatus(newStatus);
- }
- }
点击运行,这是会弹开一个页面进行用户授权(PS:最开始很多人可能会以为这里的用户授权是指你的应用给用户授权,其实不然,这里是用户给你的应用授权,以允许你的应用获取该用户的信息)
注意:这里使用的新浪账号必须当前应用的账号或者你的应用的“测试用户”,每个未通过应用审核的应用可以有15位测试用户。可以在应用信息中的“高级信息”中添加“测试用户”。
输入完账号密码,点击授权,注意了,这时会跳转到百度首页(注意地址栏):
看到地址栏上code=的东西,这正是我们所需要的,复制它,在eclipse控制台上黏贴,并按下Enter键,就可到看到当前用户的一些基本信息。
其它更详细的数据的获取方法可以参看新浪开发平台提供的API文档:http://open.weibo.com/wiki/API%E6%96%87%E6%A1%A3_V2。
***在控制台输入你所要发步的微博文本测试下发送新的微博(主要的代码如下,已经存在于上面的OAuth4Code 类中):
- Timeline tm = new Timeline();
- System.out.print("请输入所要发的微博的文本内容:[Enter]:");
- br = new BufferedReader(new InputStreamReader(System.in));
- String newStatus= br.readLine();
- tm.UpdateStatus(newStatus);
记得要输入完后按下Enter键,***可以在自己的微博首页里看到:
原文链接:http://binary.duapp.com/?p=69
【编辑推荐】