根据运营商获取Token

本文将为您介绍三大运营商获取Token的方式及交互流程示意图。

交互流程

移动用户获取Token、联通用户获取Token和电信用户获取Token的具体流程如图所示:

1d37180f4842dab38b6d7c3a4c05c0c4.png

Token获取方式

移动用户获取Token

通信协议

方法

接入地址

HTTPS+application/Json

POST

https://msg.cmpassport.com/h5/getMobile

请求参数

参数名称

描述

示例值

traceId

外部流水号,对应GetUAIDApplyTokenSign入参OutId的内容,两者需要保持一致。

mfawsxtcmyplwzpayzzvdvbsowxmkynr

appId

使用300012406312

300012406312

sign

调用GetUAIDApplyTokenSign获取。

2c61b3c58ffbeed97461e31be4fd931a

msgId

外部流水号,对应GetUAIDApplyTokenSign入参OutId的内容,两者需要保持一致。

redbyxsdetddwaaffajcwwapspykftzx

businessType

使用3

3

version

使用1.0

1.0

timestamp

请求消息发送的系统时间,精确到毫秒,对应GetUAIDApplyTokenSign入参Time的内容及其格式,两者需要保持一致。

20201125101540980

响应参数

参数名称

描述

示例值

appId

对应请求消息中的AppId。

300012406312

msgId

对应请求消息中的msgId。

redbyxsdetddwaaffajcwwapspykftzx

timestamp

响应消息发送的系统时间。

20201125101607932

resultCode

接口返回码。

103000

resultDesc

处理状态编码

成功

token

成功时返回:身份标识。

H5HTTPS4187AE9743AFCB14F8D99B9D65ED9E01

联通用户获取Token

联通用户需要分两步请求获取token,支持json/jsonp形式调用。

步骤一:获取鉴权服务器地址

通信协议

方法

接入地址

HTTPS + application/Json

GET

https://nisportal.10010.com:9001/api

请求参数

参数名称

描述

示范值

appId

使用1554778161153

1554778161153

callback

jsonp回调函数名。仅当使用jsonp格式时需要传此参数

callbackFunction

响应参数

参数名称

描述

示范值

authurl

鉴权服务器地址。

https://enrichgw.10010.com/d93222629f52ec79

步骤二:获取token

通信协议

方法

接入地址

HTTPS + application/Json

GET

${authurl}+"/api"

请求参数

参数名称

描述

示范值

appId

使用1554778161153

1554778161153

callback

jsonp回调函数名。仅当使用jsonp格式时需要传此参数。

callbackFunction

响应参数

参数名称

描述

示范值

province

省份Id。

1

code

鉴权码,32位字符串。

7nHS1nggx2WP613750206700RN6oiRN1

code即为所需token。

电信用户获取Token

通信协议

方法

接入地址

HTTPS+application/x-www-form-urlencoded;

charset=UTF

GET

https://id6.me/gw/preuniq.do

请求参数

参数名称

描述

示例值

clientType

客户端类型,对应GetUAIDApplyTokenSign入参ClientType的内容,两者需要保持一致。枚举值:

  • Android:30100

  • IOS:30300

  • H5:20200

  • WEB:10010

30100

appId

使用9390188202

9390188202

format

请求方式。对应GetUAIDApplyTokenSign入参Format的内容,两者需要保持一致。枚举值:

  • json

  • jsonp

jsonp

sign

调用GetUAIDApplyTokenSign获取。

D63C166FA19E1996EF********09C6A5397C10B4

paramKey

  • 密钥A的密文;密钥A为接入端随机生成字符串,长度为16位;paramKey = RSA1024("${密钥A}", "${天翼账号平台公钥}");填充模式为RSA/ECB/PKCS1Padding;下载电信RSA公钥

paramKey=1D7C25EB8B0B8B4CB3CF8DC60628F6549********786B0AF1FEF93FA1335057A35BF5F0B39A3867EAA9BE14B3898********8B01DE34965060445B6E1F66401D714650E4AB161CD6DCF4A72********3B856F22A192B8B0C39D7A55B961062E68C89C928894F119B25********7C548355FE9DB82852EB93C939F2200B48CD17

paramStr

不公开请求参数密文;paramStr = AES("timeStamp=${timeStamp}&callback=${callback}", "${密钥A}");填充模式为AES/CBC/PKCS5Padding,初始向量为0000000000000000

  • timeStamp为时间戳,精确到毫秒,对应GetUAIDApplyTokenSign入参Time的值,但格式不同(参考值:1697791988302);

  • callback为使用jsonp方式时的回调方法,仅当format取值为jsonp时需要填写。

140********95AF8E138B94754CB4CF83BA6FB********52B258BFDFD38BF233

version

使用1.1

1.1

响应参数

参数名称

描述

示例值

result

10000

msg

success

data

加密的返回结果数据,data = AES(返回结果, 密钥A),使用密钥A进行AES解密(AES/CBC/PKCS5Padding)。

a35336711c70456cb883f4f224e9a259

accessCode

解密后返回结果数据,此时获取accessCode即可。

H5HTTPS4187AE9743AFCB14F8D99B9D65ED9E01