OAuth2.0 里面的 state 参数是干什么的?
1.OAuth 2.0 的四种方式
-
授权码
常见于个人用户第三方登录,比如通过微信、QQ、钉钉登录第三方应用。获取临时的access_token
-
隐藏式
见于没有后端的web应用
-
密码式
信任的应用,暴漏密码,由第三方应用去模拟登录
-
凭证式
常见于应用对应用。分发给应用clientId和clientSecret来实现。
第一种和第四种是较为常见的形式。
2.拿钉钉的第三方应用统一授权来举例
-
钉钉开发者后台添加应用,为应用分配钉钉登录功能,配置回调地址;为应用分配相应的人员以及通讯录权限。
-
配置钉钉授权登录地址
详细文档可参考钉钉开发文档
https://login.dingtalk.com/oauth2/auth?
redirect_uri=
&response_type=code
&client_id=
&scope=openid
&state=
&prompt=consent
各个参数的意义:
redirect_uri:就是在