构建 EOS 区块链浏览器

文/温国兵

这是「区块链技术指北」的第 35 篇文章。

如果对我感兴趣,想和我交流,我的微信号:Wentasy,加我时简单介绍下自己,并注明来自「区块链技术指北」。同时我会把你拉入微信群「区块链技术指北」。BTW,李笑来老师也加入了我的知识星球,文末有加入方式。

0x00 背景


前面的文章讲解了如何让 nodeos 支持将链上数据实时异构到 MySQL 以及如何部署开源的区块链浏览器 API,但问题来了,没有前端展示,对于用户而言不够直观。

0x01 部署


EOS 链上数据有了,API 也有了,剩下的就是前端了。EOSTracker 是较早开源的区块链浏览器,后端使用 PHP,前端使用 AngularJS,接下来我们讲解如何部署前端。

首先我们需要安装 nodejs,命令如下:

$ apt-get install curl python-software-properties $ curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash - $ apt-get install nodejs $ node -v $ npm -v

接着 clone 代码,安装相关依赖。

$ git clone https://github.com/EOSEssentials/EOSTracker.git $ cd EOSTracker $ npm install $ npm install -g @angular/cli

0x02 测试


接着我们执行如下命令访问 EOSTracker。

$ ng serve --host 0.0.0.0

此步可能会遇到如下错误:

ERROR in ./node_modules/cipher-base/index.js Module not found: Error: Can't resolve 'stream' in '/data/EOSTracker/node_modules/cipher-base' ERROR in ./node_modules/hash-base/index.js Module not found: Error: Can't resolve 'stream' in '/data/EOSTracker/node_modules/hash-base' ℹ 「wdm」: Failed to compile.

我们可以执行如下命令解决上述问题,详情参考 此处。

node patch.js

再次执行 ng serve --host 0.0.0.0,浏览器访问 http://xxx.xxx.xxx.xxx:4200即可访问浏览器。

问题来了,我们没有配置 API,这个数据是怎么读取的呢?原来默认读取的是 EOSTracker 提供的 API。假如我们要修改成自己的 API,怎么处理?很简单,两行代码解决。

$ vim src/environments/environment.ts $ vim src/environments/environment.prod.ts

apiUrl: 'https://api.eostracker.io' 修改成自己的 API 即可。

当然,我们同样可以给区块链添加域名以及配置 HTTPS,参考如下:

  • How To Install Nginx on Ubuntu 16.04
  • Configuring a Web Server
  • How To Secure Nginx with Let's Encrypt on Ubuntu 16.04

0x03 小结


连续更新 3 篇文章,可以让读者从 0 到 1 构建区块链浏览器。区块链的强大魅力之处在于所有数据公开透明,任何人都可以同步全节点数据,任何人都可以追溯链上数据。希望能给读者带来帮助。

「区块链技术指北」同名 知识星球,二维码如下,欢迎加入。BTW,李笑来老师也加入了。

题图来自: © EOS / Block.one / eos.io

原文发布于微信公众号 - 区块链技术指北(BlockchainAge)

原文发表时间:2018-07-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏落影的专栏

iOS近距离实时通信解决方案

前言 最近研究iOS设备间的近距离实时通信,对其解决方案进行了解,整理如下: ? 其中AirDrop常用于iOS/OS X系统间分享图片、视频等,但实...

3834
来自专栏Python与爬虫

黑客已经盗了15,945,221.72 USD

myetherwallet 昨日发推特说,他们的DNS 被污染,导致部分用户进入到了假的 网站,从而导致ETH被盗

1031
来自专栏菩提树下的杨过

biztalk 2010 dev版安装小记

曾经以为TFS是微软产品中比较难安装的产品了,当我接触biztalk之后,我承认:我错了! 安装准备: 一、网络环境 要能联网,且速度不能太慢(安装过程中会根据...

2039
来自专栏源码之家

巧解“很抱歉,本域名以被锁定,请与客服联系!”

1403
来自专栏假装我会写代码

基于有赞云的个人收款即时到帐实现方案

4364
来自专栏区块链入门

【链安科技】无限授权转账漏洞

Lightcoin 合约的 transferFrom() 函数,即授权转账函数,在执行完转账后本该修改授权金额,减去已转出部分金额。但这一步骤中把这授权账户地址...

742
来自专栏FreeBuf

看我如何利用OSINT技术黑掉加密货币挖矿工具

? 在实施攻击之前,公开资源情报计划(OSINT)是我们收集信息的首选技术。在此之前,也有很多使用OSINT实现攻击的事例。随着物联网设备的不断发展,我们现在...

2847
来自专栏飞雪无情的博客

从Hexo迁移到Hugo-送漂亮的Hugo Theme主题

自从Hugo出来后,作为Go语言(golang)的重度用户的重度用户,一直想把自己的博客迁移到Hugo,但是一直没有行动,主要原因在于,我的博客使用的一款主题m...

4631
来自专栏小狼的世界

如何让你的Mac Lion朗读中文

Mac Lion的新特性中提到,这次的更新提供了22中新语言支持,但是我们利用浏览器或者文本编辑器进行语音的朗读时,默认都是使用的英文,那么如何让Lion来朗读...

1072
来自专栏jouypub

解决微信公众号文章的防盗链

写一个服务,把微信图片下载到本地,然后放在静态文件目录中,修改微信图片中的域名为自己的IP或域名,备注:程序请求时,referer需要时空的

5511

扫码关注云+社区

领取腾讯云代金券