Xuper SDK (JS/TS) 是一个在可以让开发者快速使用 XuperChain 的软件开发工具包。
该SDK提供包含账号、交易、合约与各类查询功能的服务接口,可以在浏览器与 Nodejs 环境下使用。
English | 简体中文
npm install --save @xuperchain/xuper-sdk
import XuperSDK from '@xuperchain/xuper-sdk';
const node = ''; // 节点
const chain = ''; // 链
const xsdk = XuperSDK.getInstance({
node,
chain
});
const start = async () => {
const result = await xsdk.getBlockChains();
console.log(result);
};
start();
- Browser 依赖 window.crypto
- Nodejs >= v10.0
XuperSDK.getInstance({
...,
env: {
node: {
disableGRPC: true // 禁用gRPC
}
}
})
阅读 文档 编译并部署XuperChain
- 拉取镜像 (XuperChian v3.7 - Repository)
docker pull smilingxinyi/xuperchain
- 启动容器
docker run -d -p 8098:8098 -p 37101:37101 -p 47101:47101 --name xc smilingxinyi/xuperchain
接口 | 函数名 | 文档链接 | 状态 |
---|---|---|---|
创建区块链账号 | create | LINK | √ |
助记词恢复账号 | retrieve | LINK | √ |
导入私钥 | import | LINK | √ |
导出私钥 | export | LINK | √ |
检查地址 | checkAddress | LINK | √ |
检查助记词 | checkMnemonic | LINK | √ |
获取余额 | balance | LINK | √ |
获取余额详情 | getBalanceDetail | LINK | √ |
接口 | 函数名 | 文档链接 | 状态 |
---|---|---|---|
获取链 | getBlockChains | LINK | √ |
查看当前链状态 | checkStatus | LINK | √ |
通过交易ID获取块信息 | getBlockById | LINK | √ |
通过高度获取块信息 | getBlockByHeight | LINK | √ |
接口 | 函数名 | 文档链接 | 状态 |
---|---|---|---|
转账 | transfer | LINK | √ |
发送交易 | postTransaction | LINK | √ |
查询交易 | queryTransaction | LINK | √ |
接口 | 函数名 | 文档链接 | 状态 |
---|---|---|---|
创建合约账户 | createContractAccount | LINK | √ |
获取合约 | getContracts | LINK | √ |
部署 Wasm 合约 | deployWasmContract | LINK | √ |
调用 Wasm 合约 | invokeContarct | LINK | √ |
部署 Solidity 合约 | deploySolidityContract | LINK | √ |
调用 Solidity 合约 | invokeSolidityContarct | LINK | √ |
部署 Native 合约 | deployNativeContract | LINK | √ |
调用 Native 合约 | invokeContarct | LINK | √ |
查询访问控制列表 | queryACL | LINK | √ |
查询合约状态 | queryContractStatData | LINK | √ |
公开网络
必须使用该插件
Example:
const params = {
server: process.env.ENDORSE_SERVER, // 服务
fee: process.env.FEE, // 服务费
endorseServiceCheckAddr: process.env.SERVICE_SIGN_ADDRESS, // 背书签名地址
endorseServiceFeeAddr: process.env.SERVICE_FEE_ADDRESS // 背书服务费地址
}
const xsdk = new XuperSDK({
node,
chain,
plugins: [
EndorsementPlugin({
transfer: params,
makeTransaction: params // 两个一样
})
]
});