[关闭]
@KomeijiSatori 2017-10-08T16:38:27.000000Z 字数 1689 阅读 1757

Telegram UnOffical OAuth API 文档


简介

即 client-side 模式,是OAuth2.0认证的一种模式,又称User-Agent Flow;
适用于需要通过客户端访问的方式,例如需要通过浏览器的javascript代码,或者电脑/移动终端上的客户端访问时。

其授权验证流程示意图如下

OAuth2.0协议草案V21的4.2节

过程详解

请求地址:

https://neko.store/authorize.html

请求方法:GET

请求参数:

请求参数请包含如下内容:

返回说明:

如果用户成功授权,则会跳转到指定的回调地址,并在URL后带上code参数。如果请求参数中传入了 state,这里会带上原始的 state 值。如:https://neko.store/oauth/redirect?code=54f3fad485dc53ef&state=login

说明:

code 参数单次使用有效,过期时间600秒

错误码说明:

接口调用有错误时,会返回 statusmessage 字段,以json的形式返回


获取Access Token

过程详解

请求地址:

https://neko.store/index.php/oauth/get_access_token

请求方法:POST

请求参数:

请求参数请包含如下内容:

返回说明:

如果验证成功,服务端会返回json序列化后的Access Token以及过期时间
示例

  1. {
  2. "access_token":"OWUzYWZkNjMwN2YyZjc1NWU1MM3ZmQ4YzFkYTc",
  3. "expire_at":1509183013
  4. }
  5. <div class="md-section-divider"></div>

说明:

参数 access_token 有效期30天,过期后需重新申请

错误码说明:

接口调用有错误时,会返回 statusmessage 字段,以json的形式返回


获取用户数据

过程详解

请求地址:

https://neko.store/index.php/oauth/get_user_data

请求方法:GET

请求参数:

请求参数请包含如下内容:

返回说明:

如果验证成功,服务端会返回json序列化后的用户数据
示例

  1. {
  2. "status": 200,
  3. "uid": 288733962,
  4. "first_name": "神楽坂 覚々",
  5. "last_name": null,
  6. "username": "KagurazakaSatori",
  7. "language_code": "zh-Hans-CN",
  8. "avatar": "https://cdn5.telesco.pe/file/QjcjLoEVvjuDes-R6SetgWES4af8u8spGcfJ-xtX7Bxaf8r_O_MmbW6tkWhI8zcOkACJQ7jPSZW7vag3-rMavd4fPzT9NPILopoyGQSOkXLcaWyqi3FA90URuuGMR3IQVsfs03I0MIxUcS-FWMPTzVsk6532W_Enkia7t5gbK-C9Jv5x4RH9zKxOJz4nlHSl437QjZsjqRlXLKO4X99f7oKWJumMxOXPNrgGt_PEYYnYWQMLeTQe9Nr6QJt2zg9jPwyFgc_KuRvv5QZP7OGI4BpqiUvs2DZ5D9a9BOYfdCpaas5VC5tEM8NvJzEPlqr7mJNEWVnMMvxm99LZIrdFDA",
  9. "description": "(。・ω・。)ノ♡"
  10. }
  11. <div class="md-section-divider"></div>

说明:

username 为null的情况下, avatardescription 也会为null

错误码说明:

接口调用有错误时,会返回 statusmessage 字段,以json的形式返回

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注