جستجو برای:
سبد خرید 0
  • آخرین دوره های آموزشی
  • درخواست پروژه
  • مقالات بلاکچین
  • تماس با ما

ورود

گذرواژه خود را فراموش کرده اید؟

ثبت نام

داده های شخصی شما برای پشتیبانی از تجربه شما در این وب سایت، برای مدیریت دسترسی به حساب کاربری شما و برای اهداف دیگری که در سیاست حفظ حریم خصوصی ما شرح داده می شود مورد استفاده قرار می گیرد.

  • 09395149363
  • info@fara-zaman.ir
  • لیست علاقه مندی ها
0
فرازمان | آکادمی بلاکچین
  • آخرین دوره های آموزشیداغ
  • درخواست پروژه
  • مقالات بلاکچینجدید
  • تماس با ما
آخرین اطلاعیه ها
جهت نمایش اطلاعیه باید وارد سایت شوید
شروع کنید

وبلاگ

فرازمان | آکادمی بلاکچیناخبارنمونه قراردادهای هوشمند سالیدیتیپیوند زنجیره ای اوراکل(Chainlink Oracle) در قرارداد هوشمند

پیوند زنجیره ای اوراکل(Chainlink Oracle) در قرارداد هوشمند

7 مرداد 1401
ارسال شده توسط مریم طاهری
نمونه قراردادهای هوشمند سالیدیتی
پیوند زنجیره ای اوراکل(Chainlink Oracle) در قرارداد هوشمند

پیوند زنجیره ای اوراکل(Chainlink Oracle) در قرارداد هوشمند

اکوسیستم Chainlink یک API ارائه می دهد که به شما امکان می دهد قرارداد هوشمند خود را به مجموعه ای از شبکه های غیرمتمرکز اوراکل متصل کنید. این اوراکل‌ها انواع داده‌هایی را ارائه می‌کنند که می‌توانید در قرارداد خود ادغام کنید. به عنوان مثال، می توانید قرارداد هوشمند خود را به داده های آب و هوا، قیمت سهام، اطلاعات حمل و نقل، اطلاعات ورزشی متصل کنید.

Chainlink بدین صورت کار می کند:

  • ارائه دهندگان داده، داده های خود را در محیط Chainlink می فروشند. این یک راه عالی برای یک ارائه دهنده داده قابل اعتماد برای کسب درآمد اضافی است.
  • اپراتورها، قدرت محاسباتی و زیرساخت اوراکل را برای سرویس بلاکچین قرارداد هوشمند فراهم می کنند. اپراتورهای Node با ارائه این سرویس درآمد کسب می کنند.
  • توسعه دهندگان اوراکل ها را در کد قرارداد خود ادغام می کنند. هنگامی که از Oracle استفاده می شود، قرارداد هزینه ای را توسط توکن های لینک دریافت می کند.

نمونه قرارداد با Chainlink Oracle

در کد زیر یک قرارداد هوشمند ساده Solidity است که قیمت ETH را از یک Oracle قابل اعتماد دریافت می کند. نظرات موجود در کد را بخوانید تا بفهمید چگونه کار می کند.

با تامین مالی کیف پول خود شروع کنید.

  • Kovan ETH faucet: https://faucet.kovan.network
  • Kovan ETH faucet: https://kovan.chain.link

1- کد زیر را در Remix کپی کنید و در شبکه آزمایشی دپلوی کنید.

				
					pragma solidity ^0.6.0;

import "https://raw.githubusercontent.com/smartcontractkit/chainlink/develop/evm-contracts/src/v0.6/ChainlinkClient.sol";


//contracts are like classes
//this Chainlink example inherits from ChainlinkClient

contract ChainlinkExample is ChainlinkClient {
    
    //define state variables stored on the block chain
    uint256 public currentPrice;
    address public owner;
    address public Oracle;
    bytes32 public jobId;
    uint256 public fee; 
    
    
    //constructor is run at the time of contract creating
    constructor() public {
        setPublicChainlinkToken();
        owner = msg.sender;
        Oracle = 0x2f90A6D021db21e1B2A077c5a37B3C7E75D15b7e;
        jobId = "29fa9aa13bf1468788b7cc4a500a45b8";
        fee = 0.1 * 10 ** 18; // 0.1 LINK
    }
    
    //function below creates a Chainlink API request to get a price
    //only the owner of the contract can call this function
    function requestPrice() public onlyOwner returns (bytes32 requestId)
    {
        //create a variable and store it temporarily in memory
        Chainlink.Request memory request = buildChainlinkRequest(jobId, address(this), this.fulfill.selector);
        //set the url to perform the GET request
        request.add("get", "https://min-api.cryptocompare.com/data/price?fsym=ETH&tsyms=USD");
        //set the path to find the requred data in the api response
        request.add("path", "USD");
        //multiply the results by 100 to remove decimals
        request.addInt("times", 100);
        //send the request
        return sendChainlinkRequestTo(Oracle, request, fee);
    }
    
    function fulfill(bytes32 _requestId, uint256 _price) public recordChainlinkFulfillment(_requestId) 
    {
        currentPrice = _price;
    }
    
    modifier onlyOwner() {
        require(msg.sender ==owner);
        _;
    }
    
}
				
			

2- از Injected Web3 استفاده کنید.

3- قرارداد را اجرا کنید و قرارداد اجرا شده خود را در پایین ریمیکس خواهید دید.

image 7 نمونه قراردادهای هوشمند سالیدیتی

4. قبل از اینکه بتوانید با قرارداد خود تعامل داشته باشید، باید قرارداد خود را با توکن های لینک تامین کنید. برای ارسال توکن‌ها، آدرس قرارداد را کپی کنید و با استفاده از MetaMask، توکن‌های پیوند را برای آن ارسال کنید.

image 8 نمونه قراردادهای هوشمند سالیدیتی

5. هنگامی که قرارداد شما دارای توکن های لینک است، می توانید از توابع قیمت گذاری استفاده کنید و قیمت ETH را در محیط آزمایش بازیابی کنید. اگر سعی کنید از تابع requestPrice در زمانی که توکن های پیوند در قرارداد خود ندارید استفاده کنید، یک خطا را روی صفحه مشاهده خواهید کرد.

image 9 نمونه قراردادهای هوشمند سالیدیتی
دوره ها و آموزش های فرازمان

در صورتی‌ که تجربه خاصی در خصوص برنامه‌نویسی ندارید می‌توانید از دوره‌های رایگان سایت ما “فرازمان“، استفاده کنید. همچنین اگر به دوره‌های پیشرفته‌تری در این خصوص نیاز داشته باشید، ما با آموزش های حرفه ای که در سایتمان قرار دادیم می توانید به سطح دلخواهتان با تلاش و پشتکار برسید.

نقشه راه

راهنما آکادمی فرازمان

برای یادگیری برنامه نویسی بلاکچین…

دوره مفاهیم پایه برنامه نویسی
دوره جامع جاوا اسکریپت و جی کوئری
آموزش برنامه نویسی سالیدیتی
دوره جامع html/css/bootstap
آموزش پیشرفته برنامه نویسی بلاکچین
آموزش Whitepaper نویسی برای پروژه های بلاکچینی

در این باره بیشتر بخوانید

کیف پول چند علامتی (امضا) در Solidity

قرارداد هوشمند Uniswap Solidity

پروژه تماس تحت پوشش(Covered call) در قرارداد هوشمند Solidity

تماس نماینده(Delegate call) برای ارتقای قرارداد هوشمند Solidity

پیاده سازی بازی ETH 14 در قرارداد هوشمند Solidity

برچسب ها: پیوند زنجیره ایChainlink Oracleسالیدیتیقرارداد هوشمندمقاله بلاکچیننمونه قرارداد هوشمند سالیدیتی
جدیدتر کیف پول چند علامتی (امضا) در Solidity
قبلی Chainlink price feeds در شبکه بایننس اسمارت چِین

دیدگاهتان را بنویسید لغو پاسخ

جستجو برای:
برچسب‌ها
function nft آموزش برنامه نویسی سالیدیتی آموزش بلاکچین آموزش سالیدیتی اتریوم اخبار بازی اخبار رمز ارز اخبار کریپتو امنیت قرارداد هوشمند ان اف تی اکتیویژن ایلان ماسک بازی بلاکچین برنامه نویسی بلاک چین برنامه نویسی سالیدیتی بلاک چین بیتکوین بیت کوین تحلیل بیت کوین تسلا توابع توابع در سالیدیتی جاوا اسکریپت حسابرسی در قرارداد هوشمند خبر بلاکچین دسنترالند دوج کوین رمزارز سالیدیتی سرمایه گذاری سندباکس قرارداد هوشمند مایکروسافت متاورس مقاله بلاکچین مقاله کریپتویی موزیلا نمونه قرارداد هوشمند سالیدیتی وب3 پی پال کریپتو کسب درامد کیف پول اتریوم کیف پول بلاکچین
  • محبوب
  • جدید
  • دیدگاه ها
دسته‌ها
  • آموزش برنامه نویسی سالیدیتی
  • اتریوم
  • اخبار NFT
  • اخبار متاورس
  • امور مالی غیرمتمرکز
  • برنامه نویسی سالیدیتی
  • بیت کوین
  • سولانا
  • صرافی غیرمتمرکز
  • قرارداد هوشمند
  • کریپتو
  • کیف پول ارز دیجیتال
  • مقالات بلاکچین
  • مقاله
  • نمونه قراردادهای هوشمند سالیدیتی
 فـرا زمان با بهره گیری از دانش روز دنیا و توانایی در آموزش، مشاوره و پیاده سازی انواع پروژه های بلاکچینی پا به عرصه ی رقابت گذاشته و هر روز به گروه و تخصص خود می افزاید.
دسترسی سریع
  • خانه
  • دوره ها
  • اخبار
  • تماس با ما
  • ساری، ابتدای خیابان 15 خرداد،مجتمع بهار،طبقه اول
  • 09395149363
  • info@fara-zaman.ir
خبرنامه

چیزی را از دست ندهید، ثبت نام کنید و در مورد شرکت ما مطلع باشید.

نماد ها

logo-samandehi
© 1400. آکادمی فرازمان - طراحی فرازمان
اشتراک گذاری در شبکه های اجتماعی
ارسال به ایمیل
https://fara-zaman.ir/?p=14816
دسته بندی دوره ها
دوره های من
دسته بندی دوره ها

طراحی وب

  • 1 دوره

WhitePaper

  • 1 محصول

برنامه نویسی اتریوم (سالیدیتی)

  • 4 محصول

کلاس مجازی

  • 1 دوره
دوره های من
برای مشاهده خریدهای خود باید وارد حساب کاربری خود شوید
Twitter Youtube Instagram
مرورگر شما از HTML5 پشتیبانی نمی کند.

سوالی دارید؟ از ما بپرسید، کارشناسان ما در اسرع وقت با شما تماس می گیرند.

گروه تخصصی برنامه نویسی
  • 09395149363
  • پشتیبانی آنلاین
  • 09395149363