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

ERC-721 मानक

अपूरणीय टोकन

पाठ 1, कुल 4 में से13 चरण

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

ERC-721 क्या है?

ERC-721 non-fungible tokens (NFTs) का मानक है। ERC-20 के विपरीत, प्रत्येक टोकन अद्वितीय होता है और एक अलग tokenId से पहचाना जाता है।

NFTs एकमात्र वस्तुओं—कला, संग्रहणीय वस्तुओं, गेम के अंदर की परिसंपत्तियों और अन्य चीज़ों—के स्वामित्व को दर्शाते हैं।

Fungible और Non-Fungible की तुलना

मुख्य अंतर:

  • ERC-20 - सभी टोकन समान और परस्पर विनिमेय होते हैं तथा शेष के आधार पर दर्ज किए जाते हैं
  • ERC-721 - प्रत्येक टोकन अद्वितीय होता है और प्रत्येक tokenId के स्वामी के आधार पर दर्ज किया जाता है

आपके पास पूल का कोई अंश नहीं, बल्कि विशिष्ट टोकन #42 है।

स्वामित्व के मुख्य फ़ंक्शन

ERC-721 दो महत्वपूर्ण view फ़ंक्शन से स्वामित्व का रिकॉर्ड रखता है:

  • ownerOf(tokenId) - किसी विशिष्ट टोकन का स्वामी कौन है
  • balanceOf(owner) - किसी पते के पास कितने टोकन हैं
<code>function ownerOf(uint256 tokenId) external view returns (address);
function balanceOf(address owner) external view returns (uint256);</code>

हस्तांतरण फ़ंक्शन

ERC-721 transferFrom और अधिक सुरक्षित safeTransferFrom उपलब्ध कराता है। यह जाँचता है कि प्राप्त करने वाला अनुबंध NFTs संभाल सकता है या नहीं।

<code>function transferFrom(address from, address to, uint256 tokenId) external;
function safeTransferFrom(address from, address to, uint256 tokenId) external;</code>

अनुमोदन फ़ंक्शन

स्वामी approve से दूसरों को विशिष्ट टोकन हस्तांतरित करने की अनुमति दे सकते हैं या setApprovalForAll से अपने सभी टोकनों पर व्यापक अनुमति दे सकते हैं।

<code>function approve(address to, uint256 tokenId) external;
function setApprovalForAll(address operator, bool approved) external;
function getApproved(uint256 tokenId) external view returns (address);
function isApprovedForAll(address owner, address operator) external view returns (bool);</code>

आवश्यक इवेंट

ERC-721 तीन इवेंट परिभाषित करता है: Transfer, Approval और ApprovalForAll। ध्यान दें कि tokenId को indexed किया जाता है, इसलिए किसी विशिष्ट NFT के हस्तांतरण को आसानी से ट्रैक किया जा सकता है।

<code>event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);
event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);
event ApprovalForAll(address indexed owner, address indexed operator, bool approved);</code>

safeTransferFrom और onERC721Received

safeTransferFrom NFTs के अटक जाने से बचाता है। यदि प्राप्तकर्ता कोई अनुबंध है, तो उसे onERC721Received लागू करना और सही magic value लौटाना आवश्यक है; अन्यथा हस्तांतरण विफल होकर वापस हो जाता है।

<code>// receiving contract must implement:
function onERC721Received(address operator, address from, uint256 tokenId, bytes calldata data)
    external returns (bytes4);</code>

मेटाडेटा एक्सटेंशन

अधिकांश NFTs वैकल्पिक मेटाडेटा एक्सटेंशन लागू करते हैं, जो name(), symbol() और विशेष रूप से tokenURI(tokenId) जोड़ता है। यह टोकन के ऑफ-चेन JSON मेटाडेटा की ओर संकेत करता है।

<code>function name() external view returns (string memory);
function symbol() external view returns (string memory);
function tokenURI(uint256 tokenId) external view returns (string memory);</code>

ERC-165 इंटरफ़ेस पहचान

ERC-721, ERC-165 पर आधारित है। इसके माध्यम से अनुबंध supportsInterface द्वारा यह बता सकते हैं कि वे किन इंटरफ़ेस का समर्थन करते हैं। बाज़ारस्थल इसका उपयोग NFTs पहचानने के लिए करते हैं।

<code>function supportsInterface(bytes4 interfaceId) external view returns (bool);</code>

OpenZeppelin ERC721 का उपयोग

ERC-20 की तरह, व्यावहारिक तरीका OpenZeppelin के ऑडिट किए गए ERC721 कार्यान्वयन से विरासत लेना और अपनी मिंटिंग लॉजिक जोड़ना है।

<code>// import '@openzeppelin/contracts/token/ERC721/ERC721.sol';
// contract MyNFT is ERC721 {
//     constructor() ERC721('MyNFT', 'MNFT') {}
// }</code>

परिसंपत्ति कहाँ रहती है

ब्लॉकचेन पर NFT केवल एक id और एक स्वामी होता है। वास्तविक चित्र या मीडिया आमतौर पर ऑफ-चेन रहता है, अक्सर IPFS पर, और tokenURI द्वारा संदर्भित होता है। ब्लॉकचेन स्वामित्व सिद्ध करता है, स्वयं file को नहीं।

त्वरित जाँच

ERC-721 मानक की अपनी समझ जाँचें।

पुनरावलोकन

आपने ERC-721 मानक सीखा:

  • NFTs अद्वितीय होते हैं, tokenId से पहचाने जाते हैं और ownerOf के माध्यम से दर्ज किए जाते हैं
  • हस्तांतरण के लिए transferFrom और अधिक सुरक्षित safeTransferFrom का उपयोग होता है
  • अनुमोदन: प्रति-टोकन approve और व्यापक setApprovalForAll
  • मेटाडेटा एक्सटेंशन tokenURI जोड़ता है; ERC-165 इंटरफ़ेस पहचान सक्षम करता है
  • परिसंपत्तियाँ आमतौर पर ऑफ-चेन रहती हैं और URI द्वारा संदर्भित होती हैं
शुरुआत निःशुल्क

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

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

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

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

क्या “ERC-721 मानक” पाठ निःशुल्क है?

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

“ERC-721 मानक” में मैं क्या सीखूँगा?

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

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

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

“ERC-721 मानक” पाठ पूरा करने में कितना समय लगता है?

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

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

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

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

  1. ERC-721 मानक
  2. NFT मिंट करना
  3. टोकन मेटाडेटा
  4. मार्केटप्लेस
← Web3 और DApp विकास की मूल बातें पर वापस जाएँ