Skip to content
本页目录

chainID授权

开始

chainId 钱包登录是基于 OAuth2.0 构建的 OAuth2.0 授权登录系统。 在进行 OAuth2.0 授权登录接入之前,在chainID平台注册开发者帐号,并创建应用,并获得相应的 AppID 和 AppSecret,可开始接入流程。

授权流程说明

OAuth2.0 授权登录让用户使用 chainId 钱包上的区块链身份安全登录第三方应用或网站,在用户授权登录已接入 chainId 钱包 OAuth2.0 的第三方应用后,第三方可以获取到用户的接口调用凭证 access_token,通过 access_token 可以进行授权关系接口调用,从而可实现获取钱包用户基本开放信息和帮助用户实现基础开放功能等。

授权登录目前因支持 authorization_code 模式。

授权流程:

  1. 第三方应用发起钱包授权登录请求,根据授权请求参数跳转至 chainId授权页面
  2. 用户允许授权第三方应用后,会重定向到第三方网站,并且带上授权临时票据 code 参数
  3. 通过 code 获取 access_token
  4. 通过 access_token 进行接口调用,获取用户基本数据资源或帮助用户实现基本操作

获取 code

H5 网页授权

在 H5 网页端进行重定向,跳转至以下地址:

html
http://chainuid.com/auth?client_id=649e51ef60b22b71d2bec89a&chain_code=artchain&redirect_uri=https://baidu.com
http://chainuid.com/auth?client_id=649e51ef60b22b71d2bec89a&chain_code=artchain&redirect_uri=https://baidu.com

参数说明

参数必填说明
client_id应用APPID
chain_code区块链ID
redirect_uri授权后会将 code 和 chainAddress 作为 query 参数拼接后重定向到此地址

返回说明

用户允许授权后,将会重定向到 redirect_uri 的网址上,并且带上 code 和 state 参数

html
redirect_uri?code=CODE&chainAddress=0x1554154
redirect_uri?code=CODE&chainAddress=0x1554154

若用户禁止授权,则不会发生重定向。

通过 code 获取 access_token

  • 请求 POST

通过 code 获取 access_token:

html#
## 开始

chainId 钱包登录是基于 **OAuth2.0** 构建的 OAuth2.0 授权登录系统。 在进行 OAuth2.0 授权登录接入之前,在[chainID平台](https://chainuid.com)注册开发者帐号,并创建应用,并获得相应的 AppID 和 AppSecret,可开始接入流程。

## 授权流程说明
OAuth2.0 授权登录让用户使用 chainId 钱包上的区块链身份安全登录第三方应用或网站,在用户授权登录已接入 chainId 钱包 OAuth2.0 的第三方应用后,第三方可以获取到用户的接口调用凭证 `access_token`,通过 `access_token` 可以进行授权关系接口调用,从而可实现获取钱包用户基本开放信息和帮助用户实现基础开放功能等。

授权登录目前因支持 **authorization\_code** 模式。

授权流程:
1. 第三方应用发起钱包授权登录请求,根据授权请求参数跳转至 chainId授权页面
2. 用户允许授权第三方应用后,会重定向到第三方网站,并且带上授权临时票据 **code** 参数
3. [通过 code 获取 access\_token](#通过-code-获取-access-token)
4. 通过 access\_token 进行接口调用,获取用户基本数据资源或帮助用户实现基本操作

## 获取 code

### H5 网页授权

在 H5 网页端进行重定向,跳转至以下地址:

```html
http://chainuid.com/auth?client_id=649e51ef60b22b71d2bec89a&chain_code=artchain&redirect_uri=https://baidu.com
## 开始

chainId 钱包登录是基于 **OAuth2.0** 构建的 OAuth2.0 授权登录系统。 在进行 OAuth2.0 授权登录接入之前,在[chainID平台](https://chainuid.com)注册开发者帐号,并创建应用,并获得相应的 AppID 和 AppSecret,可开始接入流程。

## 授权流程说明
OAuth2.0 授权登录让用户使用 chainId 钱包上的区块链身份安全登录第三方应用或网站,在用户授权登录已接入 chainId 钱包 OAuth2.0 的第三方应用后,第三方可以获取到用户的接口调用凭证 `access_token`,通过 `access_token` 可以进行授权关系接口调用,从而可实现获取钱包用户基本开放信息和帮助用户实现基础开放功能等。

授权登录目前因支持 **authorization\_code** 模式。

授权流程:
1. 第三方应用发起钱包授权登录请求,根据授权请求参数跳转至 chainId授权页面
2. 用户允许授权第三方应用后,会重定向到第三方网站,并且带上授权临时票据 **code** 参数
3. [通过 code 获取 access\_token](#通过-code-获取-access-token)
4. 通过 access\_token 进行接口调用,获取用户基本数据资源或帮助用户实现基本操作

## 获取 code

### H5 网页授权

在 H5 网页端进行重定向,跳转至以下地址:

```html
http://chainuid.com/auth?client_id=649e51ef60b22b71d2bec89a&chain_code=artchain&redirect_uri=https://baidu.com

参数说明

参数必填说明
client_id应用APPID
chain_code区块链ID
redirect_uri授权后会将 code 和 chainAddress 作为 query 参数拼接后重定向到此地址

返回说明

用户允许授权后,将会重定向到 redirect_uri 的网址上,并且带上 code 和 state 参数

html
redirect_uri?code=CODE&chainAddress=0x1554154
redirect_uri?code=CODE&chainAddress=0x1554154

若用户禁止授权,则不会发生重定向。

通过 code 获取 access_token

  • 请求 POST

通过 code 获取 access_token:

html
https://api.chainuid.com/oauth2/token
https://api.chainuid.com/oauth2/token

参数说明

参数必填说明
client_id应用APPID
client_secret应用密钥 AppSecret
code授权重定向后的code
  • 响应
json
{
    "code": 0,
    "data": {
        "access_token": "d707a315-4b76-4454-9c84-50823468f98b",
        "refresh_token": "JIXX3Os5ztPLSD2CTJE6fvw4xkApcmSu3DeoP2GL0obfZRe5FdIdLgwfz9Gz",
        "expires_in": 7199,
        "refresh_expires_in": 2591999,
        "client_id": "6459fcf959fe8d644beace51",
        "scope": ""
    },
    "msg": "SUCCESS"
}
{
    "code": 0,
    "data": {
        "access_token": "d707a315-4b76-4454-9c84-50823468f98b",
        "refresh_token": "JIXX3Os5ztPLSD2CTJE6fvw4xkApcmSu3DeoP2GL0obfZRe5FdIdLgwfz9Gz",
        "expires_in": 7199,
        "refresh_expires_in": 2591999,
        "client_id": "6459fcf959fe8d644beace51",
        "scope": ""
    },
    "msg": "SUCCESS"
}

参数说明

参数必填说明
access_token接口调用凭证
refresh_token刷新access_token
expires_inaccess_token 接口调用凭证超时时间,单位(秒)

错误返回样例:

json
{
    "code": 10,
    "msg": "系统异常[无效code: 33YRmACiAsUQlX5BmDa5Kyuac0C2O08KnvZBmjG66Cgj0JvMzc1jvBQKTJF8]"
}
{
    "code": 10,
    "msg": "系统异常[无效code: 33YRmACiAsUQlX5BmDa5Kyuac0C2O08KnvZBmjG66Cgj0JvMzc1jvBQKTJF8]"
}

通过 access_token 获取用户信息

获取 access_token 后,进行接口调用,有以下前提:

  1. access_token 有效且未超时;
  2. 用户已授权给第三方应用帐号相应作用域(scope)。

此接口用于获取用户个人信息。开发者可通过 openid 来获取用户基本信息。

html
https://api.chainuid.com/user
https://api.chainuid.com/user

参数说明

json
{
    "code": 0,
    "data": {
        "user": {
            "avatar": "https://thirdwx.qlogo.cn/mmopen/vi_32/POgEwh4mIHO4nibH0KlMECNjjGxQUq24ZEaGT4poC6icRiccVGKSyXwibcPq4BWmiaIGuG1icwxaQX6grC9VemZoJ8rg/132",
            "nickname": "183****7955",
            "phone": "18330881555",
            "uid": 9
        },
        "verifyInfo": {
            "createTime": "2023-06-20 20:05:18",
            "id": 1324441,
            "idcardNo": "182503189502091113",
            "phone": "18330881555",
            "realName": "张强",
            "uid": 9
        }
    },
    "msg": "SUCCESS"
}
{
    "code": 0,
    "data": {
        "user": {
            "avatar": "https://thirdwx.qlogo.cn/mmopen/vi_32/POgEwh4mIHO4nibH0KlMECNjjGxQUq24ZEaGT4poC6icRiccVGKSyXwibcPq4BWmiaIGuG1icwxaQX6grC9VemZoJ8rg/132",
            "nickname": "183****7955",
            "phone": "18330881555",
            "uid": 9
        },
        "verifyInfo": {
            "createTime": "2023-06-20 20:05:18",
            "id": 1324441,
            "idcardNo": "182503189502091113",
            "phone": "18330881555",
            "realName": "张强",
            "uid": 9
        }
    },
    "msg": "SUCCESS"
}

https://api.chainuid.com/oauth2/token

参数说明

| 参数        |      必填      |  说明 |
| ------------- | :-----------: | ----: |
| client_id     | 是 | 应用APPID |
| client_secret      |   是    |   应用密钥 AppSecret |
| code |   是   |   授权重定向后的code |


- 响应


```json
{
    "code": 0,
    "data": {
        "access_token": "d707a315-4b76-4454-9c84-50823468f98b",
        "refresh_token": "JIXX3Os5ztPLSD2CTJE6fvw4xkApcmSu3DeoP2GL0obfZRe5FdIdLgwfz9Gz",
        "expires_in": 7199,
        "refresh_expires_in": 2591999,
        "client_id": "6459fcf959fe8d644beace51",
        "scope": ""
    },
    "msg": "SUCCESS"
}
参数说明

| 参数        |      必填      |  说明 |
| ------------- | :-----------: | ----: |
| client_id     | 是 | 应用APPID |
| client_secret      |   是    |   应用密钥 AppSecret |
| code |   是   |   授权重定向后的code |


- 响应


```json
{
    "code": 0,
    "data": {
        "access_token": "d707a315-4b76-4454-9c84-50823468f98b",
        "refresh_token": "JIXX3Os5ztPLSD2CTJE6fvw4xkApcmSu3DeoP2GL0obfZRe5FdIdLgwfz9Gz",
        "expires_in": 7199,
        "refresh_expires_in": 2591999,
        "client_id": "6459fcf959fe8d644beace51",
        "scope": ""
    },
    "msg": "SUCCESS"
}

参数说明

参数必填说明
access_token接口调用凭证
refresh_token刷新access_token
expires_inaccess_token 接口调用凭证超时时间,单位(秒)

错误返回样例:

json
{
    "code": 10,
    "msg": "系统异常[无效code: 33YRmACiAsUQlX5BmDa5Kyuac0C2O08KnvZBmjG66Cgj0JvMzc1jvBQKTJF8]"
}
{
    "code": 10,
    "msg": "系统异常[无效code: 33YRmACiAsUQlX5BmDa5Kyuac0C2O08KnvZBmjG66Cgj0JvMzc1jvBQKTJF8]"
}

通过 access_token 获取用户信息

获取 access_token 后,进行接口调用,有以下前提:

  1. access_token 有效且未超时;
  2. 用户已授权给第三方应用帐号相应作用域(scope)。

此接口用于获取用户个人信息。开发者可通过 openid 来获取用户基本信息。

html
https://api.chainuid.com/user
https://api.chainuid.com/user

参数说明

json
{
    "code": 0,
    "data": {
        "user": {
            "avatar": "https://thirdwx.qlogo.cn/mmopen/vi_32/POgEwh4mIHO4nibH0KlMECNjjGxQUq24ZEaGT4poC6icRiccVGKSyXwibcPq4BWmiaIGuG1icwxaQX6grC9VemZoJ8rg/132",
            "nickname": "183****7955",
            "phone": "18330881555",
            "uid": 9
        },
        "verifyInfo": {
            "createTime": "2023-06-20 20:05:18",
            "id": 1324441,
            "idcardNo": "182503189502091113",
            "phone": "18330881555",
            "realName": "张强",
            "uid": 9
        }
    },
    "msg": "SUCCESS"
}
{
    "code": 0,
    "data": {
        "user": {
            "avatar": "https://thirdwx.qlogo.cn/mmopen/vi_32/POgEwh4mIHO4nibH0KlMECNjjGxQUq24ZEaGT4poC6icRiccVGKSyXwibcPq4BWmiaIGuG1icwxaQX6grC9VemZoJ8rg/132",
            "nickname": "183****7955",
            "phone": "18330881555",
            "uid": 9
        },
        "verifyInfo": {
            "createTime": "2023-06-20 20:05:18",
            "id": 1324441,
            "idcardNo": "182503189502091113",
            "phone": "18330881555",
            "realName": "张强",
            "uid": 9
        }
    },
    "msg": "SUCCESS"
}

Released under the MIT License.