`

最新JAVA调用新浪微博API之发微博、发图片

    博客分类:
  • JAVA
阅读更多

前言:

微博官方在2017年3月份调整了相关接口,取消了网上现有教程中发送微博(updateStatus)以及发送图片(uploadStatus)的接口,那在微博开发者平台创建应用以后,该如何发送微博与图片呢?

流程:

一、登录开放平台创建应用



 

 

 二、下载微博开发相关javaSDK,
github中下载网络延迟太严重,所以我把我下载好的放上来,需要的可以直接下载了。

三、配置文件。

client_ID = 应该ID
client_SERCRET = 应用秘钥
redirect_URI = 授权回调地址
baseURL=https://api.weibo.com/2/
accessTokenURL=https://api.weibo.com/oauth2/access_token
authorizeURL=https://api.weibo.com/oauth2/authorize
rmURL=https\://rm.api.weibo.com/2/
accessToken=2.00LXQazBiA7gUB88aa39e5ae8mLSVB

四、获取授权码,使用样例操作,获取授权码,注意,该授权码有有效期,开发测试阶段需要每天获取方能顺利测试。

package weibo4j.examples.oauth2;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

import weibo4j.Oauth;
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("Hit enter when it's done.[Enter]:");
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String code = br.readLine();
		Log.logInfo("code: " + code);
		try{
			System.out.println(oauth.getAccessTokenByCode(code));
		} catch (WeiboException e) {
			if(401 == e.getStatusCode()){
				Log.logInfo("Unable to get the access token.");
			}else{
				e.printStackTrace();
			}
		}
	}
}

  

五、进入正题,由于之前版本发送微博、图片的方法已经需要更高的权限才能使用,那小白阶段该如何发送微博与图片呢?使用statuses/share,第三方分享一条链接到微博,也就是说发送的微博内容里面必须要有链接。

仔细看代码与之前的变化:

public Status updateStatus(String status) throws WeiboException {
		return new Status(client.post(WeiboConfig.getValue("baseURL")
				+ "statuses/share.json",
				new PostParameter[] { new PostParameter("status", status) },
				access_token));
	}

 

public Status uploadStatus(String status, ImageItem item)
			throws WeiboException {
		return new Status(client.multPartURL(WeiboConfig.getValue("baseURL")
				+ "statuses/share.json",
				new PostParameter[] { new PostParameter("status", status) },
				item, access_token));
	}

 具体操作代码如下:

public static void main(String[] args) throws Exception{
		Timeline tl = new Timeline("2.00LXQazBiA7gUB88aa39e5ae8mLSVB");
		tl.updateStatus("打开支付宝首页搜索“7151437”,即可领红包,淘宝购物可用,下馆子可用,逛超市也可用。http://lxzqz.iteye.com/blog/2423292");
		File image = new File("E://picture/IMG_20160209_115848.jpg");
		FileInputStream in = new FileInputStream(image);
		byte[] ba = new byte[in.available()];
		in.read(ba);
		ImageItem it = new ImageItem(ba);
		//防止发送图片时中文乱码
		String content = URLEncoder.encode("打开支付宝首页搜索“7151437”,即可领红包,淘宝购物可用,下馆子可用,逛超市也可用。http://lxzqz.iteye.com/blog/2423292", "UTF-8");
		tl.uploadStatus(content, it);
		in.close();
	}

 赶紧去尝试一下吧!有不懂的地方欢迎留言。

  • 大小: 36.4 KB
  • 大小: 71.3 KB
  • 大小: 36.9 KB
分享到:
评论

相关推荐

    最新JAVA调用新浪微博API发第一条微博源码

    最新炒鸡详细教程JAVA调用新浪微博API发第一条微博(2019.11.28)源码,详情可以查看我的文章https://blog.csdn.net/weixin_41984936/article/details/103296556

    java调用新浪微博API接口源码

    Java调用新浪微博API接口是Java开发者与社交媒体进行交互的一个常见任务,主要涉及到网络请求、OAuth2.0授权机制以及微博平台提供的各种API服务。这里,我们深入探讨一下这个主题。 首先,`weibo4j-oauth2`这个...

    毕业设计&课设_利用 Java 调用新浪微博 API 编程,含开发代码及接口使用说明.zip

    毕业设计&课设_利用 Java 调用新浪微博 API 编程,含开发代码及接口使用说明.zip

    java调用新浪微博api源码开源开发

    一、发布微博 1、发布微博 2、发布译文微博 3、发布反馈微博 二、获取用户信息及好友关系 1、获取用户信息 2、获取关注者列表 3、获取粉丝列表 三、微博相关 1、自己发布的微博 2、其他用户的微博 四、自己的收藏...

    2种方法Java调用新浪微博接口代码示例

    2种方法Java调用新浪微博接口示例,一种是不使用任何Sdk自己实现Oauth授权,然后实现简单的发布微博功能,另一个是使用weibo4j-oauth2这个SDK做一个简单的抢沙发工具,全部代码都有详细的注释,有问题可以通过以下...

    新浪微博api调用实例 java 测试过

    通过学习这个示例,你可以快速掌握Java调用新浪微博API的基本流程和技巧,为自己的项目打下基础。 总之,Java调用新浪微博API涉及到的知识点包括OAuth 2.0授权、HTTP请求与响应处理、JSON解析以及异常处理等,这些...

    毕业设计,关于新浪微博API的Java编程

    本毕业设计旨在利用Java编程语言,通过对新浪微博API的调用,实现一个具有实际应用价值的微博相关应用程序。 二、研究目标 1. 掌握新浪微博API的使用方法。 2. 学习Java网络编程和数据解析技术。 3. 设计并实现一个...

    新浪微博API-取消关注

    在“新浪微博API-取消关注”这个主题中,我们将深入探讨如何利用API来批量取消关注,特别是在应对账号被盗后出现的大量恶意关注时,如何进行有效恢复。 首先,我们需要了解的是微博API的基本概念。API(Application...

    Java获取新浪微博评论

    在Java中,开发者可以使用第三方库如Weibo4J来实现对新浪微博API的调用,从而获取并处理微博的评论数据。Weibo4J是一个Java接口库,专门用于与新浪微博的开放API进行交互。 首先,你需要在新浪开发者平台上注册应用...

    新浪微博API提取个人信息

    《基于Java的新浪微博API个人信息提取技术详解》 在当今信息化社会,社交媒体已成为人们获取信息、交流思想的重要平台,其中新浪微博以其庞大的用户基础和丰富的互动功能,吸引了众多开发者进行二次开发。本文将...

    新浪微博API接口(JAVA版).doc

    微博开放平台是一个基于新浪微博客系统的开放的信息订阅、分享与交流平台。微博开放平台为您提供了海量的微博信息、粉丝关系、以及随时随地发生的信息裂变式传播渠道。 广大开发者或网站只要登录平台网站并创建应用...

    编写调用新浪微博API的Java程序来发送微博

    主要介绍了编写调用新浪微博API的Java程序来发送微博的方法,只是展示了一个基本的程序框架而非一个完整的图形化软件:)需要的朋友可以参考下

    java sdk 新浪微博数据采集代码

    标题 "java sdk 新浪微博数据采集代码" ...7. **API接口调用**:与新浪微博API的交互,获取和发送数据。 通过学习这个项目,开发者可以深入理解如何使用Java进行社交媒体数据采集,以及如何处理数据的存储和验证问题。

    java新浪微博(含源代码)

    在这个项目中,我们重点讨论基于Java实现的新浪微博API客户端,它提供了访问和交互微博数据的能力。 首先,Java是面向对象的编程语言,它的强大在于其丰富的类库和强大的社区支持。在开发微博应用时,可以使用如...

    毕业设计-新浪微博API的Java编程源代码

    【描述】"毕业设计-新浪微博API的Java编程源代码"揭示了项目的核心部分,即用Java实现对新浪微博API的调用。这涉及到网络编程、HTTP请求、JSON解析等技术。源代码中,开发者可能使用了如SinaWeibo4J、Unirest或...

    毕业设计,关于新浪微博API的Java编程..zip

    在本毕业设计中,主题聚焦于使用Java编程语言与新浪微博API进行交互,旨在实现一系列功能,如发布微博、获取用户信息、评论管理等。通过这个项目,我们可以深入了解微博API的工作原理,以及如何利用Java进行实际的...

Global site tag (gtag.js) - Google Analytics