调用Bytom Chrome插件钱包开发Dapp
安装使用插件钱包
1. 打开Google浏览器的应用商店,搜索Bystore

下载链接:http://t.cn/E6cFFwb
2. 然后点击添加到Chrome,就可以添加到我们的:

3. 使用google插件钱包
如果你使用的是测试网,可以去测试网水龙头领取BTM。
测试网水龙头:http://test.blockmeta.com/faucet.php
搭建Dapp demo
Dapp demo是一个基于比原的储蓄合约,该demo可以进行资产的锁仓储蓄,到期返还资产并给一定的利息。这个dapp很适合的场景就是股息分红,内部通过智能合约自动锁仓操作,到期资产自动解锁。所以我个人对这个dapp应用场景表示非常看好。
项目源码地址:https://github.com/Bytom/Bytom-Dapp-Demo
根据源码里面的readme.md文件进行搭建dapp,然后我们在本地打开http://127.0.0.1:8080 后就可以看该dapp应用。然后我们点开我们的账户如下图:

点击saving,我们看到的是储蓄资产界面,用户可以设置资产的金额,并储蓄资产

下图是我们收益的页面,我们可以看到自己储蓄的收益,如果是到期的话我们可以提出自己的收益。

Dapp调起Google插件的实现
初始化注入

检查插件,账户

调交易接口
下图是发送交易的API接口,接口的具体文档参考:https://github.com/Bytom/Bystore/wiki/API-reference。还有其他的API接口都在该文档里面。监听事件接口bytom.request(eventName, options)。

后端服务器接口
由于比原链采用的UTXO模型,该模型没有状态。但是在开发dapp的过程中需要关联用户的的地址。所以后端服务器主要是封装一层类似账户模型,方便dapp跟链进行交互。开发者开发dapp可以搭建改项目作为与链交互的服务器,自己搭建参考项目的readme.
后端服务器项目地址:https://github.com/oysheng/bufferserver
Dapp开发流程梳理
通过上面的一系列步骤,我们已经大概明白基于比原链开发dapp的一个大致流程。流程总结就是:
step1: 下载安装Chrome插件钱包,如果自己的dapp不需要跳过这一步。
step2: 如果需要自己搭建BlockCenter后端服务器,参考项目说明文件安装。不想搭建的话,直接用官方的服务,直接远程调用即可。
step3: 开发智能合约,并编译。然后将编译后的合约参数配置在dapp的配置文件,如下图:(全红部分是测试网合约配置参数)

step4:调用Chrome插件钱包。
到此,在比原链上开发dapp的整套流程都已经梳理清楚,欢迎大家快速上手试试。开发出优秀的dapp应用。
调用Bytom Chrome插件钱包开发Dapp的更多相关文章
- Chrome插件(扩展)开发全攻略
[干货]Chrome插件(扩展)开发全攻略:https://www.cnblogs.com/liuxianan/p/chrome-plugin-develop.html
- chrome插件one-read开发1:准备
阅读我的博客文章:chrome插件one-read开发:准备 前言 为啥要做这个,因为我原本想用chrome做一个书签管理的东西,但是很久没有碰过chrome的插件开发了.所以先做一个简单的,来熟悉下 ...
- 【干货】Chrome插件(扩展)开发全攻略(不点进来看看你肯定后悔)
写在前面 我花了将近一个多月的时间断断续续写下这篇博文,并精心写下完整demo,写博客的辛苦大家懂的,所以转载务必保留出处.本文所有涉及到的大部分代码均在这个demo里面:https://github ...
- 【干货】Chrome插件(扩展)开发全攻略
写在前面 我花了将近一个多月的时间断断续续写下这篇博文,并精心写下完整demo,写博客的辛苦大家懂的,所以转载务必保留出处.本文所有涉及到的大部分代码均在这个demo里面:https://github ...
- 【干货】Chrome插件(扩展)开发全攻略(转)
写在前面 我花了将近一个多月的时间断断续续写下这篇博文,并精心写下完整demo,写博客的辛苦大家懂的,所以转载务必保留出处.本文所有涉及到的大部分代码均在这个demo里面:https://github ...
- Chrome 插件PPAPI 开发(一)环境搭建
前言:本文参考了其他已有的文章,在其基础上简化了一些没有必要的操作. 同时也记录一下chrome 插件ppapi环境的基础搭建.并且感谢已有文章作者的大无畏的分享精神! 在这附上参考文章链接:http ...
- chrome插件的开发
基本目录:icon,manifest,html,js. chrome插件的使用,运行,打包. chrome浏览器打开扩展,勾选开发者模式,点击加载没打包的扩展,选中目录,加载插件. 右上角出现插件图标 ...
- 谷歌chrome 插件(扩展)开发——基础篇
公司需要开发chrome浏览器右键菜单功能,点击后可传页面的相关参数与客户端(winform)交互. 我对chrome扩展一无所知,所以第一阶段,我称之为"扫盲".也就是先找些相关 ...
- 使用 Vuejs 开发 chrome 插件的注意事项
使用 Vuejs 开发 chrome 插件 chrome 插件的开发其实并不难,web开发者可以使用 html, css, javascript 轻松的开发实用的 chrome 插件. 一个好的 ch ...
随机推荐
- 全排列 permutation
给定一个数字列表,返回其所有可能的排列 lintcode package www.dxb.com; import java.util.List;import java.util.ArrayList; ...
- 解决git pull/push每次都需要输入密码问题 和 HttpRequestException encountered
如果我们git clone的下载代码的时候是连接的https://而不是git@git (ssh)的形式,当我们操作git pull/push到远程的时候,总是提示我们输入账号和密码才能操作成功,频繁 ...
- P3803 【模板】多项式乘法(FFT)
传送门: 参考博客 1:大佬 attack 参考博客 2:大佬 胡小兔 在这里再膜拜一下这两位大佬 Orz%%% #include<iostream> #include<cstd ...
- .NET CORE 使用Dapper连接MSSQL,MYSQL
Project file: <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <Outp ...
- ELK实时日志分析平台环境部署
为什么要用到ELK一般我们需要进行日志分析场景是:直接在日志文件中 grep.awk 就可以获得自己想要的信息.但在规模较大的场景中,此方法效率低下,面临问题包括日志量太大如何归档.文本搜索太慢怎么办 ...
- 北京大学Cousera学习笔记--7-计算导论与C语言基础--基本数据类型&变量&常量
1.整形数据 1.基本型(int 4B).短整型(short 2B).长整型(long 4B) VC环境下 sizeof运算符用于计算某种类型的对象在内存中所占的字节数 ,用法:size(int) ...
- Json常用序列化工具包大比拼
一.前言 Json已成为计算机编程中最常用的数据传输和存储格式之一,所以对Json的序列化和反序列化工具的选择也是互联网系统中比较重要的环节,尤其在高并发下的执行效率,可能会直接影响系统的吞吐率.本文 ...
- php配置可被设定范围
PHP中的每个指令都有其所属的模式,这些模式决定这一个PHP指定在何时何地.是否能被设定.例如有些指令可以在 PHP 脚本中用 ini_set() 来设定,而有些则只能在php.ini 或 httpd ...
- Java内存区域与内存溢出异常(JVM学习系列1)
相对于C.C++等语言来说,Java语言一个很美好的特性就是自动内存管理机制.C语言等在申请堆内存时,需要malloc内存,用完还有手动进行free操作,若程序员忘记回收内存,那这块内存就只能在进程退 ...
- 转--Python re模块 验证11位手机号
一.常用正则表达式符号和语法: '.' 匹配所有字符串,除\n以外 ‘-’ 表示范围[0-9] '*' 匹配前面的子表达式零次或多次.要匹配 * 字符,请使用 \*. '+' 匹配前面的子表达 ...