OAuth授权

第一步

OAuth授权登录页(在浏览器访问)

GET https://service.xxx.com/platform/login.html

最后登录页拼接完成后为: https://service.xxx.com/platform/login.html?appKey=xxx&redirectUrl=xxx&state=xxx 授权登录成功后携带code重定向到redirectUrl

Query Parameters

NameTypeDescription

appKey*

String

商家appKey

redirectUrl*

String

授权登录成功后跳转页面

state

String

商家传入状态字段

{
    // Response
}

第二步

使用code换取token、openId接口

POST https://service.xxx.com/platformapi/chainup/open/auth/token

需要将参数表格中的数据包装成json字符串 利用rsa 进行参数加密和签名 作为body中的data和sign

Request Body

NameTypeDescription

app_id*

String

商家唯一app_id

time*

String

请求时间

sign*

String

用rsa_third_pri对query中的数据签名

data*

String

rsa_saas_pub加密query中数据

{
    "code": "", //返回code	
    "msg": "", //成功或失败提示信息	
    "data": "",
    "sign": ""
}

data 解密后的结构
{
      "openId":"4dbca5afca8a46f48d863d18bsdd644731",  //该授权用户所属该商户下的唯一openId	
      "expireIn":"1720492073",  //token过期时间,秒	
      "refreshToken":"4dbca5afca8a46f48d863d18bsdd644731",  //刷新token所需的token	
      "token":"4dbca5afca8a46f48d863d18bsdd644731". //授权的token	
}

以下为参与rsa加密的参数

名称类型是否必需例子描述

code

string

YES

2ae04ed9165624419bad68e9e0f3f29fbd

调用第一步login用户登陆时返回的code

刷新token

刷新token

POST https://service.xxx.com/platformapi/chainup/open/auth/refreshToken

需要将参数表格中的数据包装成json字符串 利用rsa 进行参数加密和签名 作为body中的data和sign

Headers

NameTypeDescription

Content-Type*

String

application/json

Request Body

NameTypeDescription

app_id*

String

商家唯一appId

time*

String

请求时间

data*

String

用rsa_third_pri对query中的数据签名

sign*

String

rsa_saas_pub加密query中数据

{
    "code": "", //返回code	
    "msg": "", //成功或失败提示信息	
    "data": "",
    "sign": ""
}

data 解密后的结构体
{
  "openId":"4dbca5afca8a46f48d863d18bsdd644731",  //该授权用户所属该商户下的唯一openId	
  "expireIn":"1720492073",  //token过期时间,秒	
  "refreshToken":"4dbca5afca8a46f48d863d18bsdd644731",  //刷新token所需的token	
  "token":"4dbca5afca8a46f48d863d18bsdd644731". //授权的token	
}

以下为参与rsa加密的参数

名称类型是否必需例子描述

refreshToken

string

YES

4dbca5afca8a46f48d863d18bsdd644731

获取token时收到的 refresh_token

token

string

YES

2ae04ed9165624419bad68e9e0f3f29fbd

token之前授权的token

openId

string

YES

4dbca5afca8a46f48d863d18bsdd644731

该授权用户所属该商户下的唯一openId

Last updated