Android进阶篇Oauth认证

Oauth认证作为当前主流的开发公共API认证方式,越来越受到一些开发者的使用。

它主要是为了保证账号的安全性。下面以新浪微博API为例:

OAuth2的authorize接口
URL https:
//api.weibo.com/oauth2/authorize
HTTP请求方式 GET/POST

请求参数

 必选类型及范围说明
client_id true string 申请应用时分配的AppKey。
redirect_uri true string 授权回调地址,站外应用需与设置的回调地址一致,站内应用需填写canvas page的地址。
response_type false string 返回类型,支持code、token,默认值为code。
state false string 用于保持请求和回调的状态,在回调时,会在Query Parameter中回传该参数。
display false string 授权页面的终端类型,取值见下面的说明。
language false string 授权页语言,缺省为中文简体版,en为英文版。英文版测试中,开发者任何意见可反馈至 @微博API

所以在客户端程序中可以直接利用webview载入认证的URL,进行一个网页认证。

如果认证授权通过,就会返回相应的参数。

例如:

//请求
https://api.weibo.com/oauth2/authorize?client_id=123050457758183&redirect_uri=http://www.example.com/response&response_type=token

//同意授权后会重定向
http://www.example.com/response#access_token=ACCESS_TOKEN&expires_in=250327040

开发者通过提取出access_token和uid,来调取其他的接口。

原文地址:https://www.cnblogs.com/gongcb/p/2633663.html