当前位置: 首页 > news >正文

游戏网站开发文档百度收录网站

游戏网站开发文档,百度收录网站,网站建设 中企动力 石家庄,wordpress登录页面模板下载看过以太坊白皮书的都知道,以太坊比较比特币而言所提升的地方中,我认为最重要的一点就是能够访问外部的数据,这一点在赌博、金融领域应用会很广泛,但是区块链是一个确定的系统,包括里面的所有数值包括交易ID等都是确定…

看过以太坊白皮书的都知道,以太坊比较比特币而言所提升的地方中,我认为最重要的一点就是能够访问外部的数据,这一点在赌博、金融领域应用会很广泛,但是区块链是一个确定的系统,包括里面的所有数值包括交易ID等都是确定的,你让区块自己产生一个随机的值,或者跳出区块链去访问外部一个数据,通常来说都做不到,但是我们有相应的Oracle机制可以解决这个问题。

什么是Oracle?

在以太坊和其他区块链系统中,Oracles(预言机)是连接区块链与外部世界数据的桥梁。它们提供了一种方式,使智能合约能够访问区块链外部的实时数据,如温度、价格、交易结果等。这些数据对于执行依赖于外部事件的智能合约至关重要。

Chainlink

Chainlink就是这样一个去中心化的Oracle网络,旨在连接智能合约与现实世界数据和外部API。通过Chainlink我们可以获取到金融市场结果、赛事比分和结果、天气信息、物联网数据、身份验证信息、货币兑换率等等信息。

Chainlink Feeds

Chainlink的Feeds(中文名称叫做饲料),常被称为数据Feeds或价格Feeds,是指Chainlink网络提供的一系列去中心化的数据源。你可以把它们看作是向区块链提供关于现实世界问题的答案的一系列专门的节点。这些Feeds为智能合约提供了可靠、实时和验证过的外部数据,最常见的是关于加密货币、股票、商品等的市场价格数据。以下是其大致的工作原理:

  1. 多个数据提供者:Chainlink通过多个独立的节点从不同的数据源获取相同的数据(如某种资产的当前市场价格)。这些节点可能从不同的交易所或市场信息提供者获取数据。
  2. 数据聚合:收集到的数据在链下(off-chain)被聚合,以形成一个综合的、去中心化的数据点。这个过程减少了单一数据源可能带来的风险和偏差。
  3. 数据上链:聚合后的数据被传输到区块链上,并可供智能合约使用。这些数据通常以Feeds的形式提供,智能合约可以根据需要读取这些Feeds。

实际演示

今天我们用Remix写一个获得以太坊美元价格的solidity代码,作为以太坊区块链,它本身是无法访问外部信息去得悉自己究竟值多少美金的,我们就需要使用Oracle机制的代表chainlink。

1.获得接口

Github chainlink网站
我们想要调用的接口程序地址如下:
chainlink/contracts/src/v0.8/shared/interfaces/AggregatorV3Interface.sol

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;interface AggregatorV3Interface {function decimals() external view returns (uint8);       //返回价格Feed使用的小数位数。function description() external view returns (string memory);       //提供此价格Feed的描述性信息。function version() external view returns (uint256);            //返回Aggregator接口的版本号。function getRoundData(                     //提供指定轮次(round)的价格数据。uint80 _roundId) external view returns (uint80 roundId, int256 answer, uint256 startedAt, uint256 updatedAt, uint80 answeredInRound);function latestRoundData()                 //获取最新轮次的价格数据。externalviewreturns (uint80 roundId, int256 answer, uint256 startedAt, uint256 updatedAt, uint80 answeredInRound);
}

2.找到Feed

这个需要去 chainlink price-feeds 找价格Feed,我们这次要调用的 latestRoundData() 函数,就是通过这个Feed获得到的以太坊美金价格,而且记住我们穷没有money,所以用的是Goerli测试网络,关于如何获得Goerli ETH请看我上一篇博客 以太坊交易手续费计算。

ETH/USD Feed: 0xD4a33860578De61DBAbDc8BFdb98FD742fA7028e
在这里插入图片描述

3.代码

Remix上的运行代码如下,你要是不import的话,把第2步接口里面的所有代码粘贴到里面也可以
注意:在代码中import的时候,注意一下和上面第2步的文件夹地址不太一样,这是有点坑的地方

// SPDX-License-Identifier: MIT
pragma solidity >=0.8.2 <0.9.0;import "@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol";contract getPrice {AggregatorV3Interface priceFeed = AggregatorV3Interface(0xD4a33860578De61DBAbDc8BFdb98FD742fA7028e);function showPrice() public view returns (int256, uint8) {// 获取最新的价格数据(, int256 price, , , ) = priceFeed.latestRoundData();    // 不需要的信息直接空格跳过// 获取小数位数uint8 decimals = priceFeed.decimals();// 显示出来return (price, decimals);}
}

4.运行程序

因为需要有Chainlink访问权限,运行的时候需要选择自己的账户Injected Provider
另外还有一点比较坑的是,solidity没有浮点型,我是让价格和小数位两个都显示出来,两者一结合就大概是2421.32美元
在这里插入图片描述

http://www.hotlads.com/news/4505.html

相关文章:

  • 电子商务网站名字文案代写
  • 辽宁省网站备案系统seo技术培训宁波
  • 全套网站建设互动营销是什么
  • 慈溪企业网站百度网盘app下载安装
  • 建筑导航网站百度站长平台官网登录入口
  • 西安企业网站设计哪家专业app代理推广合作
  • 网站建设术语关键词优化seo公司
  • 各种网站app免费推广平台排行榜
  • 网站导航栏模板怎么做建个网站需要多少钱
  • 自学网页设计有前途吗谷歌seo是指什么意思
  • 做网站卖流量微信营销推广软件
  • 做网站新闻移动动态身边的网络营销案例
  • 网站系统怎么做的seo软件排行榜前十名
  • java网站开发前景平台推广是什么工作
  • 建立一个小程序需要多少钱长沙官网优化公司
  • 软件app下载大全山东seo费用多少
  • 公司网站建设设计公司哪家好网站推广文章
  • 网站设计要注意事项搜索seo
  • 怎么把dw做的网站传上去2020国内搜索引擎排行榜
  • wordpress黑色主题seo百科大全
  • 济南建设局网站网络服务器的作用
  • 网站开发的风险与风险管理百度推广登录平台怎么收费
  • 免费vip影视网站怎么做的云南网站推广公司
  • WordPress大前端top宁波seo行者seo09
  • 企业建站方案seo在线培训
  • 网站排名优化策略百度小说风云榜2022
  • seo优化中商品权重主要由什么决定seo网络优化是做什么的
  • 漯河专业做网站的公司直接下载app
  • 什么网站做美食最好最专业网站的营销策略
  • 某企业网站的设计与实现引流推广平台有哪些