打字猴:1.70387817e+09
1703878170
1703878171
1703878172
1703878173
1703878174 区块链项目开发指南 [:1703875366]
1703878175 区块链项目开发指南 第7章 创建投注App
1703878176
1703878177 有时,智能合约需要访问来自其他DApp或者万维网的数据。但是技术和共识方面的挑战,使得允许智能合约访问外面的数据异常复杂。因此,目前以太坊智能合约本身不支持访问外面的数据。但是有一些第三方解决方案可以让以太坊智能合约访问来自其他DApp或者万维网的数据。在本章中,我们将学习如何使用Oraclize从以太坊智能合约发出HTTP请求,以访问来自万维网的数据。我们还将学习如何访问存储在IPFS中的文件、如何使用字符串库处理字符串等。我们将通过创建一个足球投注智能合约和一个客户端,来学习这些内容。
1703878178
1703878179 在本章中,我们将讲解如下内容:
1703878180
1703878181 ·Oraclize的工作原理。
1703878182
1703878183 ·什么是Oraclize的多种数据源,它们各自如何工作。
1703878184
1703878185 ·在Oraclize中共识的工作原理。
1703878186
1703878187 ·在以太坊智能合约中整合Oraclize。
1703878188
1703878189 ·用Solidity库使处理字符串变得容易。
1703878190
1703878191 ·创建足球投注App。
1703878192
1703878193
1703878194
1703878195
1703878196 区块链项目开发指南 [:1703875367]
1703878197 区块链项目开发指南 7.1 Oraclize概述
1703878198
1703878199 Oraclize是一种服务,旨在使智能合约可以访问来自其他区块链或者万维网的数据。该服务目前在比特币以及以太坊测试网和主网上可用。Oraclize的特殊之处是你不需要信任它,因为它可以为所提供给智能合约的全部数据做真实性证明。
1703878200
1703878201 在本章中,我们将学习如何在以太坊智能合约中使用Oraclize服务从万维网中抓取数据。
1703878202
1703878203
1703878204
1703878205
1703878206 区块链项目开发指南 [:1703875368]
1703878207 区块链项目开发指南 7.1.1 Oraclize的工作原理
1703878208
1703878209 下面来看以太坊智能合约使用Oraclize从其他区块链和万维网中抓取数据的过程。
1703878210
1703878211 为了抓取外部数据,以太坊智能合约需要发送一个查询给Oraclize,指定数据源(表示从哪里抓取数据)和数据源的参数(表示抓取什么数据)。
1703878212
1703878213 向Oraclize发送一个查询,意味着发送一个合约调用(即内部交易)给以太坊区块链中出现的Oraclize合约。
1703878214
1703878215 Oraclize服务端不断寻找新传入智能合约的查询。当它发现一个新的查询时,就抓取结果,并调用合约的_callback方法将结果返回。
1703878216
1703878217
1703878218
1703878219
[ 上一页 ]  [ :1.70387817e+09 ]  [ 下一页 ]