使用Authorization Code获取Access Token的授权验证流程又称Web Server Flow,适用于有server端的应用:web应用、有Server端的手机/桌面客户端应用等。
Authorization Code 授权分为两步,首先获取Authorization Code,然后用Code换取Access Token。
参数字段 | 是否必须 | 说明 |
---|---|---|
client_id | 必须 | 用户登录后,接入应用成功后,分配的client_id。 |
redirect_uri | 必须 | 成功授权后的回调地址,必须跟注册client_id时填写的地址一致。 |
response_type | 必须 | 授权类型,此值固定为"code" |
state | 可选 | 用于保持请求和回调的状态,授权请求成功后原样带回给第三方。 该参数用于防止csrf攻击(跨站请求伪造攻击),强烈建议第三方带上该参数。 |
参数字段 | 说明 |
---|---|
code | 用来换取access_token的授权码,有效期为10分钟 |
openid | 用户统一标识,可以唯一标识一个用户。网站或应用可将此ID进行存储,便于用户下次登录时辨识其身份。 |
openkey | 与openid对应的用户key,是验证openid身份的验证密钥 |
参数字段 | 是否必须 | 说明 |
---|---|---|
client_id | 必须 | 应用注册时分配的client_id |
client_secret | 必须 | 应用注册时分配的client_secret |
redirect_uri | 必须 | 成功授权后的回调地址,必须跟注册client_id时填写的地址一致。 |
grant_type | 必须 | 授权类型,此固定值为authorization_code |
code | 必须 | 通过上面第一步所获得的Authorization Code |
state | 可选 | 用于保持请求和回调的状态,授权请求成功后原样带回给第三方。 该参数用于防止csrf攻击(跨站请求伪造攻击),强烈建议第三方带上该参数。 |
参数字段 | 说明 |
---|---|
access_token | 访问资源API的凭证 |
refresh_token | 请求刷新令牌的凭证 |
status | 请求返回状态码,具体见附录 |
message | 请求返回信息描述 |
expires_in | access_token的过期时长,以秒为单位 |