com.qq.connect.api.weibo
类 Weibo

java.lang.Object
  继承者 com.qq.connect.QQConnect
      继承者 com.qq.connect.api.weibo.Weibo
所有已实现的接口:
java.io.Serializable

public class Weibo
extends QQConnect

封装了跟调用weibo的api接口相关的操作

另请参见:
序列化表格

字段摘要
 
从类 com.qq.connect.QQConnect 继承的字段
client
 
构造方法摘要
Weibo(java.lang.String token, java.lang.String openID)
          利用获取到的 accesstoken 和 openid构造Weibo对象
 
方法摘要
 WeiboBean addPicWeibo(java.lang.String content, byte[] pic, java.lang.String... parameters)
          上传一张照片,并发布一条消息到腾讯微博平台上
 WeiboBean addWeibo(java.lang.String content, java.lang.String... parameters)
          发表一条微博信息(纯文本)到腾讯微博平台上
 WeiboBean delWeibo(java.lang.String weiboID)
          根据微博ID删除指定微博
 RepostInfoBean getRepostList(int flag, java.lang.String rootID, int pageFlag, java.lang.String pageTime, int reqNum, java.lang.String twitterID)
          获取一条微博的转播或评论信息列表
 
从类 com.qq.connect.QQConnect 继承的方法
setOpenID, setToken
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

Weibo

public Weibo(java.lang.String token,
             java.lang.String openID)
利用获取到的 accesstoken 和 openid构造Weibo对象

参数:
token -
openID -
方法详细信息

delWeibo

public WeiboBean delWeibo(java.lang.String weiboID)
                   throws QQConnectException
根据微博ID删除指定微博

参数:
weiboID -
返回:
WeiboBean WeiboBean
抛出:
QQConnectException
从以下版本开始:
javaSE 5.0
另请参见:
del_t

addWeibo

public WeiboBean addWeibo(java.lang.String content,
                          java.lang.String... parameters)
                   throws QQConnectException
发表一条微博信息(纯文本)到腾讯微博平台上

参数:
content - 表示要发表的微博内容。必须为UTF-8编码,最长为140个汉字,也就是420个字节。
parameters - 需要发表到微博的信息,此方法可以接收随意多的String参数,参数按照官方文档,写为 ("syncflag=0")的形式
                       String con = "测试内容!" + new Random().nextInt();
                       Weibo weibo = new Weibo(accessToken, openID);
                       WeiboBean weiboBean = weibo.addWeibo(con);
                       WeiboBean weiboBean = weibo.addWeibo(con, "clientip=234.234.234.234", "longitude=23", "latitude=70", "syncflag=1", "compatibleflag=0");
                    
返回:
WeiboBean WeiboBean
抛出:
QQConnectException - when QQConnect service is not reachable
从以下版本开始:
javaSE 5.0
另请参见:
add_t

getRepostList

public RepostInfoBean getRepostList(int flag,
                                    java.lang.String rootID,
                                    int pageFlag,
                                    java.lang.String pageTime,
                                    int reqNum,
                                    java.lang.String twitterID)
                             throws QQConnectException
获取一条微博的转播或评论信息列表

参数:
flag - 标识获取的是转播列表还是点评列表 0:获取转播列表 1:获取点评列表 2:转播列表和点评列表都获取
rootID - 转发或点评的源微博的ID
pageFlag - 分页标识。 0:第一页 1:向下翻页 2:向上翻页
pageTime - 本页起始时间。 第一页:0 向下翻页:上一次请求 返回的最后一条记录时间 向上翻页:上一次请求返回的第一条记录的时间
reqNum - 每次请求记录的条数。取值为1--100条。
twitterID - 翻页时使用。 第1-100条:0; 继续向下翻页:上一次请求返回的最后一条记录id。
返回:
RepostsInfoBean RepostInfoBean
抛出:
QQConnectException
从以下版本开始:
javaSE 5.0
另请参见:
get_repost_list

addPicWeibo

public WeiboBean addPicWeibo(java.lang.String content,
                             byte[] pic,
                             java.lang.String... parameters)
                      throws QQConnectException
上传一张照片,并发布一条消息到腾讯微博平台上

参数:
pic - 必须,要上传的图片的文件名以及图片的内容(在发送请求时,图片内容以二进制数据流的形式发送,见官网的请求示例)。 图片仅支持gif、jpeg、jpg、png、bmp及ico格式(所有图片都会重新压缩,gif被重新压缩后不会再有动画效果),图片size小于4M。
如何拿到这个信息有一点指导思想,就是不要干重复造轮子的事情,如果是让用户上传的文件就借助用FileUpload 等第三方库吧
                代码示例:
                boolean isMultipart = ServletFileUpload.isMultipartContent(request);
                if (isMultipart) {
                  FileItemFactory factory = new DiskFileItemFactory();
                  ServletFileUpload upload = new ServletFileUpload(factory);
                  try {
                      List items = upload.parseRequest(request);
                      Iterator iter = items.iterator();
                      while (iter.hasNext()) {
                          FileItem item = (FileItem) iter.next();
                          if (item.isFormField()) {
                          } else {
                              byte[] picData = item.get();
                              addPicWeibo("test", picData);
                          }
                      }
                  } catch (FileUploadException e) {
                      e.printStackTrace();
                  }
                }
                
content - 表示要发表的微博内容。必须以UTF-8编码,最长为140个汉字,也就是420字节。如果微博中有URL,后台会自动将该URL转换为短URL, 每个URL折算成11个字节。若在此处@好友,需正确填写好友的微博账号,而非昵称.
parameters - 需要发表到微博的信息,此方法可以接收随意多的String参数,参数按照官方文档,写为 ("content=test","syncflag=0")的形式,方法只自动对参数进行utf-8编码,不进行url编码,在传入参数时请注意
clientip = ""; 可选, 用户ip,必须正确填写用户侧真是ip,不能为内网ip及以127或255开头的ip,以分析用户所在地。
latitude = ""; 可选,用户所在地理位置的纬度。为实数,最多支持10位有效数字。有效范围:-90.0到+90.0, +表示北纬,默认为0.0
longitude = ""; 可选,用户所在地理位置的经度。为实数,最多支持10位有效数字。有效范围:-180.0到+180.0, +表示东经,默认为0.0
syncflag = 0; 可选,标识是否将发布的微博同步到QQ空间(0:同步,1:不同步),默认为0 该参数暂还未开放对oauth2.0的支持,这里作为预留参数.
compatibleflag = ""; 可选, 容错标识,支持按位操作,默认为0. 0x2:图片数据大小错误则报错; 0x4:检查图片格式不支持则报错; 0x8:上传图片失败则报错 0x20:微博内容长度超过140字则报错; 0:以上错误均做容错处理,即发表普通微博; 0x2|0x4|0x8|0x20: 以上各种情况均报错,不做兼容处理
                    调用示例:
                    Weibo weibo = new Weibo(accessToken, openID);
                    WeiboBean weiboBean = weibo.addPicWeibo(con, picData, "clientip=234.234.234.234", "longitude=23", "latitude=70", "syncflag=1", "compatibleflag=0");
                   
返回:
WeiboBean WeiboBean
抛出:
QQConnectException - when QQConnect service is not reachable
从以下版本开始:
javaSE 5.0
另请参见:
add_pic_t