最新炒鸡详细教程JAVA调用新浪微博API发第一条微博(2019.11.28)

Java怎样调用新浪api发送微博

  • 前言
  • 获取App Key
    • 申请成为开发者
    • 填写配置信息
    • 成为测试者
    • 设置授权回调页面
    • 拿到App Key AND App Secret
  • 运行实例阶段
    • 下载微博Java SDK
    • 导入eclipse
    • 填写配置信息
    • 获取授权码
      • 拿到授权码
    • 获取token
    • 更改方法
    • 添加分享方法
  • 发微博

前言

看到这篇文章的同时,我相信你已经此时浏览了很多同类文章,并且很有能像我一样失败(频繁出现403错误…我承认我有点傻…),可能和你不同的是在摸索此功能的同时我并不是出于工作需求,纯属个人兴趣好奇,直接进入正题,你现在应该非常着急。

获取App Key

申请成为开发者

和其他大多数教程一样,我将和你一起回到原点重新开始,不要急,总会NO error。

微博开放平台

直接用用微博账号登录,登录后点击微连接选择其他根据自己需要(客户端,网页应用和浏览器插件)选择创建新的应用,我使用的是网页应用。

最新炒鸡详细教程JAVA调用新浪微博API发第一条微博(2019.11.28)_第1张图片

填写配置信息

根据上图填写基本配置信息,需要注意的是,安全域名必须填写,可以填写你的域名,也就是第三方分享时候的域名。如果你暂时手里没有可用的域名的话,可以用百度的域名,哈哈。并且要和api调用时候填写的一致,不然会报错误。

最新炒鸡详细教程JAVA调用新浪微博API发第一条微博(2019.11.28)_第2张图片

成为测试者

点击测试信息,填写你的测试账号昵称,不然的话测试发微博也会失败。

最新炒鸡详细教程JAVA调用新浪微博API发第一条微博(2019.11.28)_第3张图片

设置授权回调页面

在高级信息里面编辑授权回调页面,这样的话你才能够接收token。同样,不方便的话可以设置为百度页面嘿。

最新炒鸡详细教程JAVA调用新浪微博API发第一条微博(2019.11.28)_第4张图片

拿到App Key AND App Secret

去基本信息页面记下你的App Key 和 App Secret。后面运行代码实例会用到。

运行实例阶段

下载微博Java SDK

SDK地址

导入eclipse

最新炒鸡详细教程JAVA调用新浪微博API发第一条微博(2019.11.28)_第5张图片
src里前两个包是我自己建的测试类,不用在意。
example里是集合了新浪微博所有的方法类,可以直接供你修改使用。

填写配置信息

最新炒鸡详细教程JAVA调用新浪微博API发第一条微博(2019.11.28)_第6张图片
打开图中这个src里面的config.properties文件,需要填写前三个字段,把你的App Key 、 App Secret、回调地址填进去吧。

获取授权码

接下来打开examples包下的oauth2.0下的OAuth4Code.java文件,直接用运行main方法即可。

在微博api中所有的操作都是需要经过OAuth2.0授权的,调用每个方法都需要一个授权码,未经审核的应用授权码只有一天的有效期,通过后有30天的有效期。

最新炒鸡详细教程JAVA调用新浪微博API发第一条微博(2019.11.28)_第7张图片

拿到授权码

由于我们填写的回调地址是百度,页面会自动跳转到百度,然后细心的你会发现一个百度后会跟一个code。

最新炒鸡详细教程JAVA调用新浪微博API发第一条微博(2019.11.28)_第8张图片

获取token

拿到code后你还会发现你的eclipse控制台有一个输入框,好,把你的code粘贴进去回车。然后会返回这样一个东东,记住他!!

最新炒鸡详细教程JAVA调用新浪微博API发第一条微博(2019.11.28)_第9张图片

更改方法

微博官方在2017年已经取消了updateStatus等相关发送微博接口,这些接口都不能再调用了,但是java的sdk由于是2014的版本(怎么不更新!!!!),所以里面还是存在这些方法。随之替代以前updateStatus接口的是statuses/share(第三方分享链接到微博)

因此你需要首先找到updateStatus,然后查看他的源码。

最新炒鸡详细教程JAVA调用新浪微博API发第一条微博(2019.11.28)_第10张图片

添加分享方法

直接在该方法后面再去添加一条新的方法

/**
	 * 第三方分享微博
	 * @param status
	 * @return
	 * @throws WeiboException
	 */
	public Status share(String status) throws WeiboException {
	return new Status(client.post(WeiboConfig.getValue("baseURL")
	+ "statuses/share.json",
	new PostParameter[] { new PostParameter("status", status) },
	access_token));
	}

最新炒鸡详细教程JAVA调用新浪微博API发第一条微博(2019.11.28)_第11张图片

发微博

现在返回到你的updateStatus方法里,将main方法改为

public static void main(String[] args) {
		String access_token = "**************";
		String statuses = "java测试"
				+ "https://www.baidu.com";
		Timeline tm = new Timeline(access_token);
		try {
		Status share = tm.share(statuses);
		System.out.println(share);
		} catch (WeiboException e) {
		e.printStackTrace();
		}

*号地方改为你得到的token信息。

最新炒鸡详细教程JAVA调用新浪微博API发第一条微博(2019.11.28)_第12张图片
最后出来这段信息字段,就证明你发送成功啦。赶快去试试吧。
最新炒鸡详细教程JAVA调用新浪微博API发第一条微博(2019.11.28)_第13张图片

你可能感兴趣的:(Java中级进阶)