Web3 और DApp विकास की मूल बातें · पाठ

ऑफ़-चेन डेटा प्राप्त करना

ऐसे स्मार्ट कॉन्ट्रैक्ट लागू करें जो Chainlink ओरेकल से मूल्य फ़ीड या बाहरी API कॉल जैसे डेटा का अनुरोध और प्राप्ति कर सकें।

पाठ 3, कुल 3 में से11 चरण

ऑफ़-चेन डेटा प्राप्त करना, CoddyKit पर Web3 और DApp विकास की मूल बातें का एक निःशुल्क पाठ है। यह 3 में से 3वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह Web3 और DApp विकास की मूल बातें सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Web3 और DApp विकास की मूल बातें पाठ्यक्रम में कुल 3 पाठ शामिल हैं।

ब्लॉकचेन से परे डेटा

स्मार्ट कॉन्ट्रैक्ट शक्तिशाली होते हैं, लेकिन वे ब्लॉकचेन पर अलग-थलग काम करते हैं। वे वर्तमान शेयर मूल्यों, मौसम के डेटा या बाहरी API प्रतिक्रियाओं जैसी 'वास्तविक दुनिया' की जानकारी तक सीधे पहुँच नहीं सकते।

इस सीमा को ओरैकल समस्या कहा जाता है। इसे दूर करने के लिए हम ओरैकल का उपयोग करते हैं।

Chainlink का डेटा समाधान

Chainlink एक विकेंद्रीकृत ओरैकल नेटवर्क है, जिसे स्मार्ट कॉन्ट्रैक्ट को ऑफ-चेन डेटा और सेवाओं से सुरक्षित रूप से जोड़ने के लिए बनाया गया है।

  • यह ब्लॉकचेन और बाहरी प्रणालियों के बीच पुल का काम करता है।
  • Chainlink नोड विभिन्न स्रोतों से डेटा एकत्र करते हैं।
  • फिर वे इस डेटा को विश्वसनीय और सत्यापनीय तरीके से स्मार्ट कॉन्ट्रैक्ट तक पहुँचाते हैं।

रीयल-टाइम मूल्य फ़ीड

Chainlink के सबसे सामान्य और महत्वपूर्ण उपयोगों में से एक मूल्य फ़ीड प्रदान करना है। ये फ़ीड क्रिप्टोकरेंसी, कमोडिटी और अन्य परिसंपत्तियों के अद्यतन बाज़ार मूल्य सीधे आपके स्मार्ट कॉन्ट्रैक्ट तक पहुँचाते हैं।

DeFi ऐप्लिकेशन, ऋण प्रोटोकॉल और डेरिवेटिव के लिए यह अत्यंत महत्वपूर्ण है।

मूल्य फ़ीड के साथ इंटरैक्ट करना

Chainlink मूल्य फ़ीड से डेटा प्राप्त करने के लिए आपका स्मार्ट कॉन्ट्रैक्ट ब्लॉकचेन पर परिनियोजित किसी विशिष्ट डेटा फ़ीड कॉन्ट्रैक्ट से इंटरैक्ट करता है।

ये सभी डेटा फ़ीड कॉन्ट्रैक्ट AggregatorV3Interface नामक एक मानक इंटरफ़ेस लागू करते हैं। इससे आपके कॉन्ट्रैक्ट के लिए डेटा पढ़ना आसान हो जाता है।

मूल्य डेटा कैसे प्राप्त करें

किसी AggregatorV3Interface से नवीनतम मूल्य प्राप्त करने के लिए हम जिस मुख्य फ़ंक्शन का उपयोग करते हैं, वह latestRoundData() है।

यह कई जानकारी लौटाता है, जिसमें वास्तविक मूल्य, उसके अपडेट होने का समय और राउंड ID शामिल हैं।

मूल्य रीडर बनाएँ

आइए Chainlink मूल्य फ़ीड से नवीनतम ETH/USD मूल्य पढ़ने वाला एक सरल Solidity कॉन्ट्रैक्ट लिखें। आप इसे Sepolia टेस्टनेट का उपयोग करके Remix में चलाकर देख सकते हैं।

पता 0x694AA1769357215Ee4f0fFf93d2d05d454e5f5c4 Sepolia पर ETH/USD मूल्य फ़ीड का है।

pragma solidity ^0.8.0;

import "@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol";

contract PriceReader {
    AggregatorV3Interface internal priceFeed;

    constructor() {
        // ETH/USD price feed address on Sepolia testnet
        priceFeed = AggregatorV3Interface(0x694AA1769357215Ee4f0fFf93d2d05d454e5f5c4);
    }

    function getLatestPrice() public view returns (
        uint80 roundId,
        int answer,
        uint256 startedAt,
        uint256 updatedAt,
        uint80 answeredInRound
    ) {
        // Get the latest price data from the feed
        (roundId, answer, startedAt, updatedAt, answeredInRound) = priceFeed.latestRoundData();
    }

    function getDecimals() public view returns (uint8) {
        // Get the number of decimals used by the price feed
        return priceFeed.decimals();
    }
}

मूल्य डेटा को समझना

latestRoundData() द्वारा लौटाया गया answer वास्तविक मूल्य है, लेकिन यह एक int है और दशमलवों की एक निश्चित संख्या से स्केल किया गया है।

दशमलव के कितने स्थानों को ध्यान में रखना है, यह जानने के लिए आपको getDecimals() को कॉल करना होगा। उदाहरण के लिए, यदि answer 180000000000 है और decimals 8 है, तो मूल्य 1800.00000000 होगा।

मूल्यों से आगे: कस्टम डेटा

हालाँकि मूल्य फ़ीड सामान्य हैं, Chainlink लगभग किसी भी अन्य प्रकार का ऑफ-चेन डेटा प्राप्त कर सकता है या सत्यापनीय यादृच्छिकता भी उत्पन्न कर सकता है।

इसके लिए अधिक सामान्यीकृत तरीका आवश्यक है, जिसमें आपका कॉन्ट्रैक्ट विशिष्ट डेटा के लिए Chainlink नोड को अनुरोध भेजता है और नोड आपके कॉन्ट्रैक्ट को वापस कॉल करके प्रतिक्रिया देता है।

अनुरोध और पूर्ति पैटर्न

कस्टम डेटा के लिए Chainlink दो-चरणीय प्रक्रिया का उपयोग करता है:

  1. अनुरोध: आपका स्मार्ट कॉन्ट्रैक्ट Chainlink ओरैकल कॉन्ट्रैक्ट को अनुरोध भेजता है, जिसमें डेटा स्रोत (जैसे, API एंडपॉइंट) और जॉब ID निर्दिष्ट होते हैं।
  2. पूर्ति: Chainlink नोड अनुरोध को संसाधित करता है, ऑफ-चेन डेटा प्राप्त करता है और फिर अनुरोधित डेटा के साथ निर्दिष्ट 'fulfill' फ़ंक्शन को कॉल करते हुए आपके स्मार्ट कॉन्ट्रैक्ट को एक लेन-देन वापस भेजता है।

इससे डेटा सुरक्षित रूप से ऑन-चेन पहुँचता है।

ओरैकल एकीकरण जाँच

मान लीजिए कि किसी स्मार्ट कॉन्ट्रैक्ट को किसी विशेष शहर के वर्तमान मौसम की जानकारी प्राप्त करनी है। निम्नलिखित में से कौन-सा विकल्प सबसे अच्छी तरह बताता है कि Chainlink oracle आमतौर पर इसमें कैसे सहायता करेगा?

पाठ का सारांश

हमने जाना कि स्मार्ट कॉन्ट्रैक्ट Chainlink का उपयोग करके ऑफ़-चेन डेटा कैसे प्राप्त करते हैं। आपने इन विषयों के बारे में सीखा:

  • ओरेकल समस्या और Chainlink का समाधान।
  • AggregatorV3Interface का उपयोग करके Chainlink Price Feeds के साथ इंटरैक्ट करना।
  • latestRoundData() फ़ंक्शन और इसके आउटपुट की व्याख्या।
  • कस्टम डेटा अनुरोधों के लिए सामान्य 'अनुरोध करें और पूरा करें' पैटर्न।

मज़बूत DApps बनाने के लिए बाहरी डेटा को सुरक्षित रूप से प्राप्त करना अत्यंत महत्वपूर्ण है!

शुरुआत निःशुल्क

एआई शिक्षक के साथ Web3 और DApp विकास की मूल बातें सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
29
पाठ
105

अक्सर पूछे जाने वाले प्रश्न

क्या “ऑफ़-चेन डेटा प्राप्त करना” पाठ निःशुल्क है?

हाँ — Web3 और DApp विकास की मूल बातें अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “ऑफ़-चेन डेटा प्राप्त करना” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। Web3 और DApp विकास की मूल बातें पाठ्यक्रम में कुल 3 पाठ शामिल हैं।

“ऑफ़-चेन डेटा प्राप्त करना” में मैं क्या सीखूँगा?

ऐसे स्मार्ट कॉन्ट्रैक्ट लागू करें जो Chainlink ओरेकल से मूल्य फ़ीड या बाहरी API कॉल जैसे डेटा का अनुरोध और प्राप्ति कर सकें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Web3 और DApp विकास की मूल बातें का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Web3 और DApp विकास की मूल बातें शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Web3 और DApp विकास की मूल बातें शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 3 में से 3वाँ पाठ है।

“ऑफ़-चेन डेटा प्राप्त करना” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Web3 और DApp विकास की मूल बातें पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Web3 और DApp विकास की मूल बातें पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. ओरेकल समस्या
  2. Chainlink की मूल बातें
  3. ऑफ़-चेन डेटा प्राप्त करना
← Web3 और DApp विकास की मूल बातें पर वापस जाएँ