爱发电
  • 爱发电新手
    • 关于爱发电
    • 成为创作者 & 建立会员制
    • 赞助创作者
  • 创作者指南
    • 创作者进阶
    • 电圈
    • 独立方案
    • 赞助者管理与群发私信
    • 会员徽章
    • 实体 & 物流指南
    • 发布投票
    • 版权保护
    • 售卖商品关联作品集
    • 售卖商品关联动态
    • 发电有效期具体规则
    • 爱发电品牌素材
    • 播客创作者指南
    • 文字创作者指南
    • 游戏开发者指南
    • MOD 创作者指南
    • 公众号指南
    • 开发者 OAuth2 关联授权
    • 开发者 API 和 Webhook
  • faq
    • 创作者常见问题
    • 用户常见问题
由 GitBook 提供支持
在本页
  • 接入
  • 整体流程
  1. 创作者指南

开发者 OAuth2 关联授权

接入

接入方需要提供 应用名称、可信域名和 clientSecret(如不提供官方将随机生成)

官方会告知你的 clientID 和 clientSecret

整体流程

授权登录目前支持 authorization_code 模式,适用于拥有 server 端的应用授权。

该模式整体流程为:

1. 第三方发起授权登录请求,显示一个授权登录页面,显示对应的图标和应用名称(如果用户没有登录会跳转登录,成功后返回页面)

https://afdian.net/oauth2/authorize?response_type=code&scope=basic&client_id=yourclientid&redirect_uri=urlencodedhttp&state=111

标红部分替换为你自己的数据。为了方便测试,目前回调地址支持 http、https,线上使用请使用 https 保证数据传输安全。state 用来做安全校验。

2. 用户点击同意,重定向到 redirect_uri,会携带 code 和 state。用户拒绝则不会发生重定向

3. 第三方客户端请求服务器,根据 code 换取 access_token,此时会返回 user_id

获取用户ID

注意:为了安全请务必服务端调用该接口,并且走https协议

secret请仅保存到服务端,如有泄露,请第一时间联系官方进行重置。

https://afdian.net/api/oauth2/access_token

form 表单形式POST提交

参数名

数值

备注

grant_type

authorization_code

必填,固定值

client_id

分配的client_id

必填

client_secret

分配的密钥

必填

code

上个流程返回的 code

必填

redirect_uri

注意仍然填写之前的重定向地址,用来核对数据(这里不需要手动encode)

必填

返回 ec em data 结构,仅当 ec 200时表示成功

{
  "ec":200,
  "em":"ok",
  "data":  
      {  
          "user_id": "网站的用户ID",  
          "user_private_id": "同openapi的 user_private_id,如尚未用到,忽略即可"
   }
}

上一页公众号指南下一页开发者 API 和 Webhook

最后更新于3年前