长安链已上架一款lighthouse+长安链的轻量级云服务器产品

体验入口:轻量应用服务器Lighthouse_香港轻量服务器_海外轻量服务器-腾讯云

长安链管理平台

区块链管理

区块链概览

获取区块链ID(DApp需要配置)

合约管理

智能合约git地址:https://git.chainmaker.org.cn/fish/fish1208-chainmaker-lighthouse/-/tree/master/contract

EVM虚拟机

部署合约

合约名:HelloWorld

合约语言:solidity

git地址:

contract/solidity/HelloWorld/HelloWorld.bin · master · fish yu / fish1208-chainmaker-lighthouse · ChainMaker

contract/solidity/HelloWorld/HelloWorld.abi · master · fish yu / fish1208-chainmaker-lighthouse · ChainMaker

WASM虚拟机

部署合约

合约名:hello

合约语言:rust

git地址:https://git.chainmaker.org.cn/fish/fish1208-chainmaker-lighthouse/-/blob/master/contract/rust/hello/contract_helloworld.wasm

注:需要在【投票管理】进行投票,允许部署合约。

投票管理

上链管理

HelloWorld合约

1、发起上链(set方法)

2、发起上链(get方法)

查看

hello合约

1、发起上链(set方法)

2、发起上链(get方法)

查看

组织信息

获取org1组织ID(DApp需要配置)

节点信息

获取consensus1节点端口(DApp需要配置)

区块链浏览器

查看区块信息

DApp代码开发

需要先开放端口,允许外部服务访问

netstat -tunlp | grep 12301

添加规则,允许外部访问12301、12302、12303、12304端口

拷贝证书

使用本地SSH客户端软件远程登录实例

证书文件在/root/chainmaker/chain目录下

cd /root/chainmaker/chain

将证书文件夹crypto-config拷贝到项目根目录下

代码开发

contract_helloworld.rsrust语言智能合约。HelloWorld.solsolidity语言智能合约。sdk-config.yml配置文件。ChainSDKConfig.java通过sdk-config.yml配置文件获取ChainClient、User对象。ChainController.java根据区块高度来获取区块信息。HelloController.javahello合约控制器,执行合约中的方法。

智能合约

配置sdk-config.yml

配置链ID、组织ID、节点信息。

获取区块基本信息

根据区块高度来获取区块信息(传参blockHeight=6,返回该区块的区块高度、区块哈希、前区块哈希、时间戳)

http://127.0.0.1:7022/chain/block/info" />

hello合约

set方法

请求

GET http://127.0.0.1:7022/hello/set" />响应

HTTP/1.1 200Content-Type: application/json{"code": 200,"success": true,"msg": "操作成功","data": "d160188d93204f3b60f54ddf09a6bc191d236944bf1f26aa9287164aee57183e"}

返回交易id

使用交易id在区块链浏览器查询

get方法

请求

GET http://127.0.0.1:7022/hello/get HTTP/1.1

响应

HTTP/1.1 200Content-Type: application/json{"code": 200,"success": true,"msg": "操作成功","data": ""}

Git地址

fish yu / fish1208-chainmaker-lighthouse · ChainMaker

测试地址(可访问)

注:测试地址失效时间为2022-07-10。

hello合约set方法

http://1.13.249.4:7022/hello/set?n=ChainMaker

hello合约get方法

http://1.13.249.4:7022/hello/get