当前位置:首页 > 开发 > 移动开发 > 正文

新浪微博发送带图片微博(各社交平台类似)

发表于: 2013-08-01   作者:周来来   来源:转载   浏览:
摘要: 今天下午一直在研究怎么可以发带图片的微博,看得api说明我始终不知道该怎么做,主要是以前post的参数都是String,这里要文件,我就不知道该怎么办了,本来都放弃了,休息了一会,冷静下来思考,搞定了,代码如下 // @param url post的网址 // @param pairList post的参数列表 // @param imageName post的参数中,该图片的参数名字

今天下午一直在研究怎么可以发带图片的微博,看得api说明我始终不知道该怎么做,主要是以前post的参数都是String,这里要文件,我就不知道该怎么办了,本来都放弃了,休息了一会,冷静下来思考,搞定了,代码如下

	// @param url post的网址
	// @param pairList post的参数列表
	// @param imageName post的参数中,该图片的参数名字,图片参数key=imageName,value="图片的本地路径"
	public static String postWithImage(String url,
			List<NameValuePair> pairList, String imageName) {
		HttpClient client = new DefaultHttpClient();
		HttpPost post = new HttpPost(url);
		HttpContext context = new BasicHttpContext();
		int size = pairList.size();
		try {
			MultipartEntity entity = new MultipartEntity(
					HttpMultipartMode.BROWSER_COMPATIBLE);// 上传图片需要的对象
			for (int i = 0; i < size; i++) {
				if (pairList.get(i).getName().equals(imageName))
					entity.addPart(pairList.get(i).getName(), new FileBody(
							new File(pairList.get(i).getValue())));// 添加图片文件对象
				else {
					entity.addPart(pairList.get(i).getName(), new StringBody(
							pairList.get(i).getValue()));// 添加文字对象
				}
			}
			post.setEntity(entity);
			HttpResponse response = client.execute(post, context);
			return EntityUtils.toString(response.getEntity());
		} catch (IOException e) {
			e.printStackTrace();
			return null;
		}

	}

 

 

新浪微博发送带图片微博(各社交平台类似)

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号