使用新浪微博开放平台api同步微博内容至自己网站(我要开发自己的微博应用(App),(组图))
优采云 发布时间: 2021-12-08 22:02使用新浪微博开放平台api同步微博内容至自己网站(我要开发自己的微博应用(App),(组图))
OAuth和新浪微博开放平台介绍我之前在新浪微博上创建了一个应用,并获得了App key和Secret key,以便调用新浪微博开放平台API来了解它的全部内容。前几天,连续4天没课,于是我就耐心的摸索API的使用方法。新浪微博开放平台虽然提供了各种语言的开发SDK下载,但也有一些基础接口调用的demo和接口说明文档。但是经过这几天的耐心尝试,感觉新浪微博开放平台上的入门指南与下载的Java开发包weibo4j包中的demo使用注释有些不一致。再加上自我理解能力有限,导致了很多困惑。幸运的是,我没有 不要放弃试图理解它。废话少说,以下是我的学习过程****。如果你想通过调用新浪微博开放平台API开发自己的微博应用,首先要有一个新浪微博账号和一个CSDN账号,因为我们需要同时用这两个账号创建一个微博应用获取App key和Secret key。那么App key和Secret key有什么用呢?其实我只是在新浪微博开放平台上看了一系列的说明,并不是很了解App key和Secret key的使用。因为我们需要用这两个账号同时创建一个微博应用来获取App key和Secret key。那么App key和Secret key有什么用呢?其实我只是在新浪微博开放平台上看了一系列的说明,并不是很了解App key和Secret key的使用。因为我们需要用这两个账号同时创建一个微博应用来获取App key和Secret key。那么App key和Secret key有什么用呢?其实我只是在新浪微博开放平台上看了一系列的说明,并不是很了解App key和Secret key的使用。
因为更重要的是了解OAuth认证授权的整个过程,以及几个Token和4个URL在整个OAuth认证授权过程中的作用。刚接触OAuth的时候,完全没有概念,觉得没办法学。幸好找到了下面的文章,对理解OAuth很有帮助。链接如下: OAUTH协议介绍 基于OAuth安全协议的Java应用编程 在***应用中使用OAuth OAuth有3个参与者,分别是User、Service Provider、Consumer。假设我想为其他新浪微博用户开发一个基于新浪微博开放平台的应用程序(App)。它们的对应关系如下: User => 新浪微博用户想要使用这个App Provider => 新浪微博开放平台Consumer => App 其实我们的App就相当于User和Provider(新浪微博平台)的一个第三方应用。作为第三方App,如果要访问用户在新浪微博平台上保存的资源,必须经过一系列的认证和授权才能工作。下面是根据我对整个OAuth认证授权流程的理解画的图(可以跳过,对下面的一些概念有一定了解的时候再看这个流程图): 结合上面的流程图,下面这是我对这些术语和每个过程的描述的理解:Consumer key和Consumer Secret:
消费者向提供者申请,希望能够调用其开放的API。申请通过后,Provider将其分配给满足其要求的Consumer,以唯一标识该Consumer满足Provider的要求。对应上图中的流程1和流程2。Request Token、Request Secret:当用户访问Consumer并希望获得其特殊服务时,该服务会在整合了Provider中存储的用户自己的资源后由Consumer返回。此时,Consumer向Provider请求获取Requst Token,用于唯一标识Consumer和User之间的具体关联。对应上图中的流程3、4、5。处理6,消费者必须将用户引导至提供者提供的 OAuth 身份验证和授权页面。实际上,浏览器会重定向到带有请求令牌和请求秘密参数的 authenticationURL。URL 由提供商提供。接下来,User在流程7和流程8中授权Consumer(一般是通过输入账号和密码登录),然后Provider会被重定向到流程1中Consumer提供的Callback_URL,URL参数附加OAuth令牌和 OAuth 验证器。
流程9是Consumer使用之前从Provider获取的Request Token再次向Provider请求获取Access Token。Access Token,Access Secret:如果流程10中的Provider返回一个未经User授权的Access Token,用于唯一标识特定Consumer可以访问用户在Provider中存储的资源和信息。然后消费者可以开始使用