首先安装相关仓库
yarn add @chainlink/contracts
示例代码(rinkeby,如需要其他测试网/token的地址可以来这里 查看并替换一下下面的地址):
// SPDX-License-Identifier: MIT
pragma solidity ^0.6.7;
import "@chainlink/contracts/src/v0.6/interfaces/AggregatorV3Interface.sol";
contract PriceConsumerV3 {
uint256 public randomNum;
AggregatorV3Interface internal priceFeed;
/**
* Aggregator: ETH/USD
*/
// 在这里填入你的对应网络的合约地址
constructor(address addr) public {
priceFeed = AggregatorV3Interface(addr);
}
/**
* 调用 getLatestPrice 即可获取价格
*/
function getLatestPrice() private view returns (int) {
(
uint80 roundID,
int price,
uint startedAt,
uint timeStamp,
uint80 answeredInRound
) = priceFeed.latestRoundData();
return price;
}
}