ओवरव्यू
अपने dapp में Simulation API का उपयोग करना सीखें ताकि उपयोगकर्ता on-chain भेजने से पहले transaction परिणामों का पूर्वावलोकन कर सकें। इस तरह, आप उन्हें विफल या गलत transactions के कारण होने वाले वित्तीय नुकसान से बचने में मदद कर सकते हैं और आपके dapp का उपयोग करते समय उनका विश्वास बढ़ा सकते हैं। अपने dapp में Tenderly Simulations API को एकीकृत करने के लिए ताकि यह पता लगाया जा सके कि on-chain भेजने से पहले ही कोई transaction विफल होगा या नहीं, आपको यह करना होगा:- ethers.js लाइब्रेरी से raw transactions को populate करें।
- Transactions भेजने से पहले उनका simulation करें।
- (वैकल्पिक) प्रत्येक blockchain interaction को एक Tenderly simulation में wrap करें।
ethers.js से raw transactions को populate करें
पहला कदम एक transaction object बनाना है जो हमारे simulation endpoint पर भेजा जाएगा। हम इसे सीधेethers.js लाइब्रेरी से उत्पन्न करेंगे। नीचे दिए गए उदाहरण में, हम देखेंगे कि DAI contract के ऊपर transfer() function के लिए हम इसे कैसे प्राप्त कर सकते हैं:
example.tsx
भेजने से पहले transactions का simulation करें
अब जब हमने एक unsigned raw transaction निकाल लिया है, तो इसे on-chain (Ethereum Mainnet पर) भेजने से पहले इसका simulation करें:example.tsx
प्रत्येक blockchain interaction को एक Tenderly simulation में wrap करें (वैकल्पिक)
यह सुनिश्चित करने के लिए कि प्रत्येक blockchain interaction का पहले simulation किया जाता है,ethers.js signer ऑब्जेक्ट के चारों ओर एक सरल wrapper लिखें जो हमेशा transactions का simulation करेगा।
इसके अतिरिक्त, आगे बढ़ते हुए, आप typed errors पेश कर सकते हैं जिनके साथ आपका logic interact कर सकता है:
example.tsx
यहाँ एक GitHub
repo है जहाँ आप
इस implementation का एक उदाहरण पा सकते हैं।