OAuth2 Grant type - Implicit Mode
概述
有些 Web 应用是纯前端应用,没有后端。这时就不能用上面的方式了,必须将令牌储存在前端。RFC 6749 就规定了第二种方式,允许直接向前端颁发令牌。这种方式没有授权码这个中间步骤,所以称为(授权码)”隐藏式”(implicit)。

1. client发起授权请求,例如:
1 | GET /authorization? |
请求包含以下参数:
- client_id :客户端注册后获取的唯一值。
- redirect_uri :重定向地址。
- response_type :值为 token 表明授权方式是简化模式。
- scope :访问数据的作用域。
- state :当前会话的唯一值。
2. 用户登录并确认授权
3. 直接生成access token并重定向到客户端地址:
1 | GET /callback# |
重定向使用的是 # 连接参数,而不是 query 参数,这是因为浏览器对 URI 发起请求时不会携带 # 符号之后的数据,使用 # 也是安全方面的考虑。