如果开发者需要从第三方获取数据时,就需要获取第三方的OAuth授权,这样可以保证数据的安全,使得第三方软件既可以访问用户数据,又不知道用户密码。
应用程序进入流程:
程序启动
如何获取OAuth授权?
不是任何应用都能OAuth授权的,以新浪的为例:如果你需要访问新浪微博的用户数据,首先你必须成为新浪的开发者,申请微博账号,在新浪开发者网站创建的应用才能OAuth授权应用的名称的含义:如果审核通过,会显示来自XX应用。
应用地址的含义:点击来自某某应用,会跳转的链接
App Key:应用的唯一标识
OAuth授权有哪些步骤
- 通过网页获取未授权的Request Token(展示登录界面)
- 获取用户授权的Request Token(点击授权)
- 用授权的Request Token换取Access Token
(Access Token:等到它就相当于得到一个"令牌",通过此令牌请求,就可以去拥有资源的网站抓去任意有权限的才可以被抓取的数据)
查看开发文档:
开发文档
- url
- 发送什么类型的请求
- 可以请求的参数:请求的参数拼接到url后面才是完整的url
拼接url:url + ?+ 必选参数
例如:
https://api.weibo.com/oauth2/authorize?client_id=1104550576&redirect_uri=http://www.baidu.com - 用浏览器打开上面的地址就会得到一个登录界面
- 需要登录自己的微博帐号,如果用户第一次登录,登录成功后会先进入到授权页面
-
点击授权,回调成功进入回调界面,并返回code参数,即Request Token
E1D16008-4BC6-472A-9EE1-251AC34537F3.png - 用得到的code(Request Token)换取需要的Access Token(获取授权)
注意:什么时候处理授权?应该在程序启动时进行授权
access_token:表示哪个用户在哪个应用下的标识符,获取access_token就可以访问新浪微博的数据