风险提示:理性看待区块链,提高风险意识!
58 BaaS API使用指南
首页 > 币界资讯 > 区块链知识 2019-02-27 20:30:48
币界网报道:

1、调用链码的查询接口

https://apibaas.58.com/chaincode/query请求方式:POST

输入参数 :

参数名

必填

类型

示例值

描述

appKey

string

0e7c23s9e4453d90db7a42f61d2

区块链网络Key

appKey

string

xOJb3dn3dfdrQixDgffdds2YOnIH

组织Key

channelName

string

mychannel

通道名称

chaincodeName

string

chaincode

链码名称

chaincodeVersion

string

1.0

链码版本

func

string

query

链码方法名称

args

string

a

链码参数,若有多个参数,args后加数字,从0开始。如有三个参数a、b、100,则需传递三个参数 args0=a&args1=b&args2=100

nonce

string(32)

C380BEC2BFD727A4B6845133519F3AD6

随机数

orgs

string

org1

链码调用的组织名称,默认调用orgKey所属组织,如调用多个组织,则需用“|”分割组织名,如:orgs=org1|org2

sign

string

6C7A87D8B55DAA1FF5DDF3F4243B7AE9

签名

输出参数 :

参数名称

类型

描述

code

int

公共错误码, 200 表示成功,其他值表示失败,详见错误码

message

string

模块错误信息描述,与接口相关

data

json

在code=200时,返回查询结果数据

在code=200时,data中的数据:

参数名称

类型

描述

status

int

公共错误码, 200 表示成功,其他值表示失败,详见错误码

message

string

模块错误信息描述,与接口相关

data

json

区块链返回的结果数据

2、调用链码的方法

https://apibaas.58.com/chaincode/invoke请求方式:POST

输入参数 :

参数名

必填

类型

示例值

描述

appKey

string

0e7c23s9e4453d90db7a42f61d2

区块链网络Key

orgKey

string

xOJb3dn3dfdrQixDgffdds2YOnIH

组织Key

channelName

string

mychannel

通道名称

chaincodeName

string

chaincode

链码名称

chaincodeVersion

string

1.0

链码版本

func

string

transfer

链码方法名称

args

string

a

链码参数,若有多个参数,args后加数字,从0开始。如有三个参数a、b、100,则需传递三个参数 args0=a&args1=b&args2=100

nonce

string(32)

C380BEC2BFD727A4B6845133519F3AD6

随机数

orgs

string

org1

链码调用的组织名称,默认调用orgKey所属组织,如调用多个组织,则需用“|”分割组织名,如:orgs=org1|org2

sign

string

6C7A87D8B55DAA1FF5DDF3F4243B7AE9

签名,签名算法见第3部分

输出参数 :

3、错误码

code

message

说明

200

SUCCESS

成功

500

ERROR

失败

501

PARAM_MISSING

缺少参数

502

PARAM_ERROR

参数错误

503

INVALID_SIGN

参数签名错误

504

RATE_LIMIT

调用太频繁,被限流(不超过2000TPS)

505

BLACK_LIST

已被加入黑名单

4、签名算法

签名生成的通用步骤如下:

第一步,将请求参数集合中非空参数值的参数按照参数名ASCII码从小到大排序(字典序),使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串stringA。

特别注意以下重要规则:

◆ 参数名ASCII码从小到大排序(字典序);◆ 如果参数的值为空不参与签名;◆ 参数名区分大小写;◆ sign参数不参与签名

第二步,在stringA最后拼接上key得到stringSignTemp字符串,并对stringSignTemp进行MD5运算,再将得到的字符串所有字符转换为大写,得到sign值signValue。

◆ key路径:58区块链平台(baas.58.com)–> 查看组织密钥

举例:假设传送的参数如下:

appKey=0e7c23s9e4453orgKey=xOJb3dn3dfdrQichannelName=mychannelchaincodeName=chaincodechaincodeVersion=1.0func=transferargs0=aargs1=bargs2=10nonce=d8jcd77xss

第一步:对参数按照key=value的格式,并按照参数名ASCII字典序排序如下:

StringA = appKey=0e7c23s9e4453&args0=a&args1=b&args2=10&chaincodeName=chaincode&chaincodeVersion=1.0&channelName=mychannel&func=transfer&nonce=d8jcd77xss&orgKey=xOJb3dn3dfdrQi

第二步:拼接API密钥:

stringSignTemp=stringA+"&key=123wwd"//注:key为组织秘钥

第三步:生成MD5签名

sign=MD5(stringSignTemp).toUpperCase() = "9A0A8659F005D6984697E2CA0A9CF3B7"

最终得到最终发送的数据:

appKey=0e7c23s9e4453orgKey=xOJb3dn3dfdrQichannelName=mychannelchaincodeName=chaincodechaincodeVersion=1.0func=transferargs0=aargs1=bargs2=10nonce=d8jcd77xsssign=9A0A8659F005D6984697E2CA0A9CF3B7

上一篇: 区块链基础知识:什么是挖矿(ASIC挖矿)
下一篇: 区块链共识类型:POC、DBFT、POA、POB
推荐专栏
Boss Wallet Web3 Econom Pass
专注币圈最新资讯
通俗浅显地聊透Web3大事小情
读懂区块链生态与未来,尽在币界网!
热门币种
更多
币种
美元价格
24H涨跌幅
BTC比特币
60,963.61 USDT
¥435,103.38
-2.72%
ETH以太坊
3,368.69 USDT
¥24,042.67
-0.3%
BNB币安币
570.68 USDT
¥4,073.00
-0.28%
USDT泰达币
1.02 USDT
¥7.25
-0.19%
SOL
135.96 USDT
¥970.36
+7.66%
USDC
1.00 USDT
¥7.15
-0.01%
TON
7.59 USDT
¥54.14
+4.55%
XRP瑞波币
0.47720 USDT
¥3.41
+0.48%
DOGE狗狗币
0.12210 USDT
¥0.87140
+2.43%
ADA艾达币
0.39050 USDT
¥2.79
+3.88%
热搜币种
更多
币种
美元价格
24H涨跌幅
比特币
60962.19 USDT
¥442,884.21
-1.67%
Solana
137 USDT
¥995.29
-1.28%
Filecoin
4.3427 USDT
¥31.55
-2.63%
柚子
0.5716 USDT
¥4.15
-0.8%
Curve
0.2963 USDT
¥2.15
-6.88%
Terra Classic
8.216E-5 USDT
¥0.00
-0.98%
Shiba Inu
1.72E-5 USDT
¥0.00
-3.91%
Conflux
0.1563 USDT
¥1.14
-1.76%
狗狗币
0.1221 USDT
¥0.89
-4.16%
dYdX
1.3771 USDT
¥10.00
-1.76%
Arweave
25.8763 USDT
¥187.99
-10.41%
Uniswap
9.3568 USDT
¥67.98
-1.93%
最新快讯
更多
Symbiotic:sUSDe已达质押上限
2024-06-27 11:05:48
全网BTC期权未平仓头寸为209.2亿美元,ETH期权未平仓头寸为92.4亿美元
2024-06-27 11:04:11
全网ETH合约未平仓头寸超150亿美元
2024-06-27 11:02:28
币安完成MetalDAO(MTL)主网置换,并开放充提业务
2024-06-27 11:01:27
DeFianceCapital联创称BLASTFDV远不及其至少50亿美元的预期
2024-06-27 11:00:51
Gate.io首席安全官提出5项用户必知安全措施,共筑安全防线
2024-06-27 10:57:30
澳大利亚广播公司的YouTube账号遭劫持用来推销加密骗局
2024-06-27 10:52:09
下载币界网APP