欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

android新浪微博调用用户微博接口

程序员文章站 2023-12-22 15:50:16
...

根据上篇认证通过后,可以调用API中的开放接口. 一般我们开发的应用都是要显示一些企业的微博信息,如我之前开发的“万事达卡”显示万事达人微博.

首先我们要调用一个接口:http://api.t.sina.com.cn/statuses/user_timeline.json等同于现在的http://api.t.sina.com.cn/statuses/user_timeline.json 现在新浪都改成带s的接口了,不过感觉还是不带s好用,网上很多例子都是调用不带s的,我调用了带s的不管用,不知道原因,知道的朋友,请您给小弟说下. 这里我也用不带是的.

我们要注意一点:

android新浪微博调用用户微博接口

android新浪微博调用用户微博接口

一般我们都是根据screen_name设置查询微博的.

代码片段:

OAuthConsumer authConsumer = new CommonsHttpOAuthConsumer( Oauth.consumerKey, Oauth.consumerSecret);
  authConsumer.setTokenWithSecret(User.token, User.tokenSecret);

这里也可以把前面我们Oauth认证时候的authConsumer传过来,就不用这些步骤了,

 client = new DefaultHttpClient();
  httpPost = new HttpPost(USER_TIMELINE_URL);
  // 把相应的属性值穿进去 还有很多属性,page,count等,请查看api.
  List<NameValuePair> list = new ArrayList<NameValuePair>();
  list.add(new BasicNameValuePair("screen_name", "万事达人"));

  

  httpPost.setEntity(new UrlEncodedFormEntity(list, HTTP.UTF_8));
  httpPost.getParams().setBooleanParameter(
    CoreProtocolPNames.USE_EXPECT_CONTINUE, false);

  authConsumer.sign(httpPost);

  httpResponse = client.execute(httpPost);

  if (HttpStatus.SC_OK == httpResponse.getStatusLine().getStatusCode()) {
   String result = EntityUtils.toString(httpResponse.getEntity());
   Log.i(Oauth.TAG, result);
  }


这样我们就可以获取到我们要的微博信息

android新浪微博调用用户微博接口

展示如下:(显示的是万事达人)

android新浪微博调用用户微博接口android新浪微博调用用户微博接口

正在开发中,样子很丑,没有来得及调整,就将就着吧.


上一篇:

下一篇: