如何发布一条新微博??

booooo­ 2012-06-04 10:17:49

大家有谁调用过新浪微博的http://open.weibo.com/wiki/2/statuses/upload这个接口,是发布一条带图片的微博;
里面有个图片的参数,是binary类型的,我想在Java中应该是byte[]吧,按照它的要求,我应该使用POST请求并把这些参数加上;
可问题是,POST中如何添加byte[]的参数啊??
我是用的OAuth2.0授权的方式。

在线等啊,急急急。
...全文
217 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
dengyun_2008 2013-12-18
  • 打赏
  • 举报
回复
解决了吗,我也求啊
booooo­ 2012-06-04
  • 打赏
  • 举报
回复
谢谢楼上。
我还想看看大家有没有更简便更好的方法
zhenyunyuan 2012-06-04
  • 打赏
  • 举报
回复
加我Q 87452213 ,我告诉你
booooo­ 2012-06-04
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

加我Q 87452213 ,我告诉你
[/Quote]
哥们,你不厚道啊。
它倒霉官方自带的Utility类就有你给我的全部代码,而且一模一样
booooo­ 2012-06-04
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

把图片转成 二进制数组就行了。 http://topic.csdn.net/u/20120529/09/156e88dd-d1da-4739-8a27-c9f7d40a0588.html
参考一下此文,我之前也回复过
---------------------------------------------------------------------------
需要特别说明的是 我们……
[/Quote]
看了, 你们说的这些都是老版的吧?
我用的就是新版的,像什么Timeline,ImageItem之类的都没有

private String upload(Weibo weibo, String source, String file, String status, String lon,
String lat) throws WeiboException {
WeiboParameters bundle = new WeiboParameters();
bundle.add("source", source);
bundle.add("pic", file);
bundle.add("status", status);
if (!TextUtils.isEmpty(lon)) {
bundle.add("lon", lon);
}
if (!TextUtils.isEmpty(lat)) {
bundle.add("lat", lat);
}
String rlt = "";
String url = Weibo.SERVER + "statuses/upload.json";
try {
rlt = weibo
.request(this, url, bundle, Utility.HTTPMETHOD_POST, mWeibo.getAccessToken());
} catch (WeiboException e) {
throw new WeiboException(e);
}
return rlt;
}

这是官方给的范例,我都不知道他们是怎么写的,更不知道里面的图片参数怎么传,怎么会是一个String类型的。
一看到这我就火了,有此感慨一下:新浪的东西是我见过,用过的最差的,一丁点专业性都没有
qdkfriend 2012-06-04
  • 打赏
  • 举报
回复
把图片转成 二进制数组就行了。 http://topic.csdn.net/u/20120529/09/156e88dd-d1da-4739-8a27-c9f7d40a0588.html
参考一下此文,我之前也回复过
---------------------------------------------------------------------------
需要特别说明的是 我们的sdk是weibo4j-oauth2.jar
另外说明的是 图片是用二进制传过去的
LZ应该看看官方的demo
Weibo weibo = new Weibo();
weibo.setToken("sina token");
Timeline tm = new Timeline();
Status status = null;
String content = "xxxx";
byte[] img = null;//这里是图片二进制数据
if(img!=null && img.length>0){
ImageItem ii = new ImageItem(img);
status = tm.UploadStatus(URLEncoder.encode(content, "UTF-8"), ii);
}else{
status = tm.UpdateStatus(content);
}

80,349

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧