मुख्य सामग्री पर जाएं
Node RPC एक तेज़ और विश्वसनीय production node है जो RPC के माध्यम से 80 से अधिक ब्लॉकचेन नेटवर्क्स तक पहुंच सक्षम बनाता है। यह आपको transactions भेजने, स्मार्ट कॉन्ट्रैक्ट्स डिप्लॉय करने, ब्लॉकचेन डेटा query करने या अन्य ऑपरेशन्स करने की अनुमति देता है, अपना खुद का node चलाने या बुनियादी ढांचे को प्रबंधित किए बिना।
Node RPC paid प्लान पर उपलब्ध है। अपने अकाउंट के लिए इसे सक्षम करने के लिए, हमारी sales टीम से संपर्क करें
Node RPC समर्थन करता है:
  • बहु-क्षेत्रीय बुनियादी ढांचा (EU & US) स्थान-स्वतंत्र low latency सुनिश्चित करता है
  • http और WebSocket प्रोटोकॉल के माध्यम से पहुंच
  • Request batching
  • Node Extensions के माध्यम से कस्टम RPC मेथड्स बनाना
  • Tenderly के डेवलपमेंट टूलिंग तक पहुंच

कस्टम RPC मेथड्स

मानक EVM मेथड्स को सपोर्ट करने के अलावा, Node RPC tenderly_ namespace में Tenderly के कस्टम RPC मेथड्स को उजागर करता है। Simulation, gas estimation, और tracing मेथड्स समर्पित पृष्ठों पर प्रलेखित हैं:
  • tenderly_simulateTransaction signing से पहले transaction के परिणाम को simulate करने के लिए।
  • tenderly_estimateGas transaction के लिए सटीक gas अनुमान प्राप्त करने के लिए।
  • tenderly_simulateBundle एक ही request में कई transactions को simulate करने के लिए।
  • tenderly_estimateGasBundle transactions के एक bundle के लिए सटीक gas अनुमान प्राप्त करने के लिए।
  • tenderly_traceTransaction एक मौजूदा transaction का डिकोडेड trace प्राप्त करने के लिए।
Decoding और signature लुकअप मेथड्स RPC reference में उपलब्ध हैं:
  • tenderly_decodeInput बाहरी function कॉल्स को heuristically decode करने के लिए।
  • tenderly_decodeError कस्टम errors को heuristically decode करने के लिए।
  • tenderly_decodeEvent उत्सर्जित events को heuristically decode करने के लिए।
  • tenderly_functionSignatures 4-byte function selector के आधार पर function interface प्राप्त करने के लिए।
  • tenderly_errorSignatures 4-byte selector के आधार पर event interface प्राप्त करने के लिए।
  • tenderly_eventSignature 32-byte event signature के आधार पर event interface प्राप्त करने के लिए।

Node RPCs का प्रबंधन

Dashboard में लॉग इन करें और Node RPCs पृष्ठ पर जाएं जहां आप नए Node RPCs बना सकते हैं और मौजूदा को प्रबंधित कर सकते हैं।

Node RPC बनाना

एक नया Node RPC बनाने के लिए, इन चरणों का पालन करें:
  • Create Node बटन पर क्लिक करें
  • वह नेटवर्क चुनें जिसे आप एक्सेस करना चाहते हैं
  • Node के लिए एक नाम प्रदान करें
  • Create पर क्लिक करें
आप जो भी Node बनाते हैं उसका एक अद्वितीय URL होगा।

Node RPCs कॉन्फ़िगर करना

एक बार Node RPC बन जाने के बाद, आप इसे Settings में कॉन्फ़िगर कर सकते हैं। वहां से, आप कर सकते हैं:
  • Node RPC URL रीसेट करें
  • Node नाम बदलें
  • Node हटाएं

Node RPC को MetaMask में जोड़ें

एक क्लिक से Node RPC को अपने MetaMask wallet में जोड़ें। node का Overview पृष्ठ खोलें, Add to Wallet बटन पर क्लिक करें, और MetaMask में कार्रवाई की पुष्टि करें। Node RPC जोड़ने के लिए MetaMask में Approve पर क्लिक करें। Node RPC

WebSockets

Node RPC HTTPS के अलावा WebSocket (wss://) पर भी सुलभ है। एक WebSocket कनेक्शन persistent और bidirectional है, और subscription मेथड्स eth_subscribe और eth_unsubscribe के लिए आवश्यक है। WebSocket endpoint प्राप्त करने के लिए, Dashboard में node का Overview पृष्ठ खोलें और WSS URL कॉपी करें। आप wscat कमांड-लाइन टूल के साथ कनेक्शन का परीक्षण कर सकते हैं:
example
wscat -c wss://mainnet.gateway.tenderly.co/$TENDERLY_NODE_ACCESS_KEY
एक बार कनेक्ट होने के बाद, socket पर JSON-RPC requests भेजें और वास्तविक समय में responses प्राप्त करें:
request.json
{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}
response.json
{"jsonrpc":"2.0","id":1,"result":"0x657330"}

JSON-RPC requests को batch करना

JSON-RPC request batching आपको एक ही HTTPS कॉल के भीतर कई JSON-RPC method आह्वान भेजने की अनुमति देता है। एक batch request में व्यक्तिगत JSON-RPC requests की एक array होती है, और response batch से प्रत्येक request के अनुरूप क्रम में परिणामों की एक array होती है। आप batching का उपयोग कर सकते हैं:
  • सीधे, एक HTTPS request भेजकर जिसमें व्यक्तिगत JSON-RPC कॉल्स की एक array हो,
  • Ethers का उपयोग करके, JsonRpcBatchProvider को इंस्टैंशिएट करके,
  • Viem का उपयोग करके, createPublicClient के माध्यम से client बनाते समय batch parameter को कॉन्फ़िगर करके।
यदि कोई विशेष request विफल हो जाता है, तो batch request अभी भी 200 OK HTTP status लौटाता है, और विफल JSON-RPC कॉल के अनुरूप response object error रखता है।
Request batching केवल HTTPS पर समर्थित है। WSS पर कोई batching समर्थन नहीं है। एक batch के अंदर प्रत्येक request को अलग-अलग गिना और चार्ज किया जाता है; Node RPC pricing देखें।
batch-call.sh
curl https://mainnet.gateway.tenderly.co/$TENDERLY_NODE_ACCESS_KEY \
-X POST \
-H "Content-Type: application/json" \
-d '[
  {"jsonrpc": "2.0", "id": 1, "method": "eth_blockNumber", "params": []},
  {"jsonrpc": "2.0", "id": 2, "method": "eth_gasPrice", "params": []},
  {"jsonrpc": "2.0", "id": 3, "method": "eth_getBalance", "params": ["0xd8da6bf26964af9d7eed9e03e53415d37aa96045", "latest"]}
]'
Viem के साथ, batching client स्तर पर कॉन्फ़िगर की जाती है:
batch-calls.ts
const client = createPublicClient({
  chain: mainnet,
  transport: http(
    `https://mainnet.gateway.tenderly.co/${process.env.TENDERLY_NODE_ACCESS_KEY}`,
    {
      batch: true,
    }
  ),
});

const [blockNumber, balance, ensName] = await Promise.all([
  client.getBlockNumber(),
  client.getBalance({ address: "0xd2135CfB216b74109775236E36d4b433F1DF507B" }),
  client.getEnsName({ address: "0xd2135CfB216b74109775236E36d4b433F1DF507B" }),
]);

RPC Request Builder

RPC Request Builder आपको अपने ब्राउज़र से किसी भी समर्थित RPC मेथड को निष्पादित करने देता है। प्रत्येक request सीधे Node RPC को भेजा जाता है। Builder आपको मौजूदा collections का उपयोग करने या अपने स्वयं के requests बनाने की अनुमति भी देता है। समर्थित सभी RPC मेथड्स की सूची RPC reference में देखें।

Node Extensions

Node Extensions आपको JavaScript या TypeScript का उपयोग करके अपने dapp, protocol, या विशिष्ट आवश्यकताओं के अनुरूप कस्टम RPC मेथड्स के साथ Node RPC की कार्यक्षमता को विस्तारित करने की अनुमति देते हैं। Node Extensions के रूप में बनाए गए RPC मेथड्स में extension_ prefix होता है और उन्हें Node RPC के माध्यम से निष्पादित किया जाता है। Node Extensions आप Dashboard में Node Extensions टैब से कई तरीकों से एक Node Extension बना सकते हैं:
  • शुरुआत से बनाएं: Create Custom Extension पर क्लिक करें, RPC मेथड का नाम रखें, और प्रत्येक कॉल पर निष्पादित होने वाला JavaScript/TypeScript function लिखें।
  • Web3 Action का पुनः उपयोग करें: extension के function के रूप में गैर-प्रमाणीकृत webhook trigger वाले मौजूदा Web3 Action के source code का पुनः उपयोग करें।
  • लाइब्रेरी से डिप्लॉय करें: public Node Extensions library से तैयार-निर्मित extension को सक्रिय करने के लिए Add From Library पर क्लिक करें। लाइब्रेरी extensions को edit नहीं किया जा सकता।
  • CLI के माध्यम से डिप्लॉय करें: Tenderly CLI का उपयोग करके tenderly node-extensions init के साथ tenderly.yaml में extensions परिभाषित करें और tenderly node-extensions deploy के साथ उन्हें भेजें।
यदि आपका extension API keys या अन्य संवेदनशील मान का उपयोग करता है, तो उन्हें Web3 Action Secrets के रूप में स्टोर करें और उन्हें कोड में await context.secrets.get('API_KEY') के साथ पढ़ें। extension पर JSON-RPC पेलोड भेजने और request और response का पूर्वावलोकन करने के लिए Test बटन का उपयोग करें।

संसाधन

Node RPC के साथ शुरुआत करें या इन संसाधनों के साथ यह कैसे काम करता है के बारे में सीखना जारी रखें।

Simulations & Gas Estimation

JSON-RPC के माध्यम से transactions को simulate करें और सटीक gas अनुमान प्राप्त करें।

RPC Reference

Node RPC पर समर्थित RPC मेथड्स की विस्तृत सूची देखें।

Supported Networks

Node RPC पर समर्थित नेटवर्क्स की पूरी सूची देखें।

Pricing

RPC मेथड्स को निष्पादित करने के लिए उपयोग किए गए compute power के आधार पर बिलिंग को समझें।