使用新浪微博开放平台api同步微博内容至自己网站(新浪微博的开发api,公示如下公示)
优采云 发布时间: 2021-12-04 06:22使用新浪微博开放平台api同步微博内容至自己网站(新浪微博的开发api,公示如下公示)
注:本文代码无效,请勿模仿,其他方法请参考scribe方法
最近在研究新浪微博的开发api,尝试在一些客户端应用中调用相应的api来发送新浪微博。经过一番尝试,终于成功了。几个重点和对应的demo公布如下,供大家了解。
在本文中,我主要演示如何通过用户名/密码连接到新浪微博,然后读取最新的微博信息,最后演示如何发送一个简单的微博,其他可以通过相应的微博api进行处理,有这里没有仔细深入。
首先要申请开发者授权,也就是要在新浪上申请。直接通过地址:用微博登录后,创建一个应用程序即可。创建应用的目的是获取对应的app Key和app Secret。app key会用到后面的主要API中,方便新浪追踪请求的来源。具体流程请自行google。
应用完成后,我们将开始我们的api之旅。在本文中,我们没有使用官方的java sdk,因为主要目的是一个简单的演示。如果是应用开发,还是可以下载对应的java sdk应用。查看示例以了解如何拨打电话。
本文使用httpclient。如果使用maven,可以使用groupId作为commons-httpclient,使用artifactId作为commons-httpclient,将其导入到项目中。其次,为了方便对返回数据的分析,使用了一个JSON组件(fastjson)来解析json字符串。
获取应用授权,即允许应用访问用户的相应信息(用户名、密码除外)
由于新浪使用的是auth2.0,所以整个登录过程分为两部分。一部分是登录授权,它允许我们的应用访问指定用户的相应信息。这里的信息不包括用户名和密码。. 在类网页应用中,即通过弹出新浪登录框,用户输入用户名和密码,授权应用使用。新浪通过验证后,会返回到我们的应用所在的主界面。第二部分是获取对应的token,相当于用户会话,以便在后续操作中可以使用这个token进行数据访问。
申请授权地址为:,完整代码如下:
获取 access_token
API参考接口:
整个代码如下:
获取最新微博信息列表
API参考接口:
代码显示如下:
发送微博消息
api参考:
代码显示如下:
综上所述
其实整个过程还是很简单的。最重要的是前两步登录和获取授权。这两步就完成了,后面都是json请求,然后传参数,拿到结果,再处理结果的问题。.
值得注意的是,在获取access_token的第二步中,官方文档中写到可以通过grant_type=password获取token信息,即输入用户名和密码。但是这种方式需要特殊的申请,具体的申请步骤比较复杂,必须经过官方审核,非一般开发者也能做好。所以这里就不用这个了(当然,如果你用这个方法,可以把第一步和第二步合并成一)。
相关文章: