OAuth 2.0 授权码模式(Authorization Code)详解

OAuth 2.0 授权码模式是常用的授权方式,适用于有后端服务器的客户端。以下是核心流程:

  1. 用户授权
    📱 用户访问 https://yourdomain.com/auth?response_type=code&client_id=YOUR_CLIENT_ID&redirect_uri=YOUR_REDIRECT_URI&scope=read
    ⚠️ 用户需登录并同意授权范围,完成后跳转至 redirect_uri 附带授权码(code)

  2. 获取令牌
    🧑‍💻 后端通过 POST /token 请求交换令牌:

    curl -X POST https://yourdomain.com/token \
      -d "grant_type=authorization_code" \
      -d "code=AUTHORIZATION_CODE" \
      -d "redirect_uri=YOUR_REDIRECT_URI" \
      -d "client_id=YOUR_CLIENT_ID" \
      -d "client_secret=YOUR_CLIENT_SECRET"
    

    ✅ 成功后返回 access_tokenrefresh_token

  3. 使用令牌
    🛡️ 令牌用于调用 API:
    Authorization: Bearer YOUR_ACCESS_TOKEN
    🔁 刷新令牌可重新获取访问令牌

📌 扩展阅读OAuth 2.0 其他授权模式对比
🌐 图解流程:authorization_code_flow

authorization_code_flow