Web应用扫码接入

登录

对于WEB应用,只要遵循SimpleWallet协议,即可通过MYKEY APP扫描二维码登录。
WEB应用通过二维码传递给MYKEY如下的数据,数据格式为json:
1
// 签名调用数据格式
2
{
3
protocol string // 协议名,本协议默认 SimpleWallet
4
version string // 协议版本信息,如1.0
5
dappName string // dapp名称
6
dappIcon string // dapp应用图标url
7
action string // 操作类型,为 login
8
uuID string // dapp服务器为本次登录产生的uuid
9
loginUrl string // dapp服务器验证登录的url
10
expired number // 仅Web二维码模式可用,过期时间,unix时间戳
11
loginMemo string // 登录备注信息
12
chain string // 可以是EOS,ETH或者Any(Any默认用EOS账号签名)
13
}
Copied!
MYKEY APP通过扫描二维码,请求用户授权登录,并把签名数据提交到WEB应用指定的loginUrl。
WEB应用收到的MYKEY如下的数据,格式为json:
1
{
2
protocol string // 协议名,本协议默认 SimpleWallet
3
version string // 协议版本信息,如1.0
4
timestamp number // 当前unix时间戳
5
sign string // eos签名信息
6
uuID string // dapp服务器为本次登录产生的uuid
7
Account string // eos账户名
8
Ref string // 钱包名
9
}
Copied!
WEB端使用签名账号的Reserved公钥进行验签。Reserved公钥需要通过读取mykey合约获得,见文档

合约调用

Web扫码调用合约时序图

请传递给MYKEY如下的数据,数据格式为json:
1
// 合约调用数据格式
2
{
3
protocol string // 协议名,本协议默认 SimpleWallet
4
version string // 协议版本信息,如1.0
5
action string // 操作类型,为 transaction
6
dappName string // DApp应用名
7
dappIcon string // DApp应用图标
8
desc string // MYKEY显示给用户合约调用语义描述
9
callback string // MYKEY回调DApp的深度链接,e.g. custom://custom.com/contract
10
notifyUrl string // 合约调用成功通知DAppServer的回调URL接口
11
ContractRequest [ //合约操作数组,包含转账与非转账合约操作
12
{ //非转账
13
account string // 合约名
14
name string // 合约方法
15
info string // MYKEY显示给用户的语义化描述
16
data object // 根据合约abi定义所传的参数对象 e.g. {key1: value1, key2: value2 }
17
},
18
{ //转账
19
account string // 合约名
20
name string // 合约方法
21
info string // MYKEY显示给用户的语义化描述
22
TransferDataRequest {
23
from string // 转账From
24
to string // 转账To
25
quantity string // 转账金额和单位,e.g. "1.0000 EOS"
26
memo string // 链上备注
27
}
28
}
29
]
30
expired number // 仅Web二维码模式可用,过期时间,unix时间戳
31
}
Copied!

签名

Web扫码调用签名时序图

请传递给MYKEY如下的数据,数据格式为json:
1
// 签名调用数据格式
2
{
3
protocol string // 协议名,本协议默认 SimpleWallet
4
version string // 协议版本信息,如1.0
5
action string // 操作类型,为 sign
6
dappName string // DApp应用名
7
dappIcon string // DApp应用图标
8
desc string // MYKEY显示给用户签名调用语义描述
9
message string // 需要签名的内容
10
callback string // MYKEY回调DApp的深度链接,e.g. custom://custom.com/contract
11
notifyUrl string // 签名成功通知DAppServer的回调URL接口
12
expired number // 仅Web二维码模式可用,过期时间,unix时间戳
13
}
Copied!
Last modified 1yr ago
Copy link