快速入门
搭建一个 FIBOS 开发环境需要安装 fibos 和 fibos.js,安装过程请参考 【快速安装】 章节。
本章节示例代码的目录结构:
1 | hello_fibos/ |
本章节示例代码地址:https://github.com/FIBOSIO/samples 下basic
文件夹示例。
启动节点
环境配置脚本
创建 start_fibos
文件夹,保存如下代码至 node.js
1 | var fibos = require('fibos'); |
运行 FIBOS 开发环境
1 | hello_fibos$ fibos start_fibos/node.js |
运行结果日志(部分):
1 | …… |
如果你看到了以上的消息,说明运行成功,fibos
已经开始区块生产。
JavaScript 合约代码
注意:需新建窗口,保证 node.js 节点正常运行
创建文件夹 fibos_client
,保存如下代码至 hello/hello.js
:
1 | exports.hi = user => console.error('in contract:', user); |
合约 ABI 文件
保存如下代码至 hello/hello.abi
:
1 | { |
连接 FIBOS 节点
在文件夹fibos_client
下,新建 initClient.js
,保存如下代码:
1 | var FIBOS = require('fibos.js'); |
加载、发布合约脚本
在文件夹fibos_client
下,新建 deploy.js
,保存如下代码:
1 | var FIBOS = require('./initClient.js') |
运行脚本:
1 | hello_fibos$ fibos fibos_client/deploy.js |
输出结果(部分):
1 | code: { |
备注:wasm
是一个低层级的、轻便式的字节码,它致力于实现接近原生的执行速度。
调用合约
使用 fibos.js 中的 API 去调用合约。
在文件夹fibos_client
下,新建 call.js
,保存如下代码:
1 | var FIBOS = require('./initClient.js') |
执行脚本:
1 | hello_fibos$ fibos fibos_client/call.js |
控制台打印结果如下:
1 | { |
同时在 FIBOS 节点服务控制台显示 trxs:1
显示结果如下:
1 | 2018-8-30T14:28:22.005 thread-1 producer_plugin.cpp:1196 produce_block ] Produced block 00000e57c573a33b... #3671 @ 2018-07-30T14:28:22.000 signed by eosio [trxs: 1, lib: 3670, confirmed: 0] |
本章带领大家快速了解以及发布了一个简单的 JavaScript 合约,下面为大家准备了一个示例可以在【教程】章节中查阅。