Симуляция через RPC
Node RPC позволяет читать данные из блокчейна и отправлять транзакции. Но вы также можете симулировать транзакции в Node. Преимущество симуляции через RPC заключается в том, что вы можете выполнять все эти операции через один RPC URL.Симуляции через RPC или API доступны только в поддерживаемых сетях. Ознакомьтесь со списком поддерживаемых сетей.
example
tenderly_simulateTransaction. См. справочник RPC.
Пример
- request
- response.json
request
Симуляция через API
Используйте эндпоинт simulate API, чтобы симулировать одну транзакцию с разными параметрами.Для использования симуляций в виртуальных окружениях мы рекомендуем Simulate RPC и Bundle Simulate RPC.
Иначе можно использовать Simulation API виртуальных окружений.
Simulation API endpoint on public network
Simulation API endpoint on a Virtual Environment
Тело запроса
ОтправьтеPOST-запрос на эндпоинт API. Полные сведения о теле запроса см. в Справочнике API.
Симулируемое тело запроса похоже на JSON-RPC вызов eth_call.
Следующие поля обязательны:
network_id(string): ID сети, в которой вы хотите запустить симуляцию.block_number(number): «latest» или номер блока для симуляции.to(string): адрес получателя транзакции.from(string): адрес, инициирующий транзакцию.input(string): закодированные данные вызова метода контракта.gas(number): количество газа, предоставленного для симуляции.
Вы можете указать любой адрес отправителя в поле
from. Поскольку Tenderly симулирует неподписанные транзакции, вам не нужно
владеть приватным ключом аккаунта, чтобы симулировать транзакции от имени конкретного отправителя.simulation_type, который может принимать значения full, quick или ABI. Это поле необязательно, поскольку по умолчанию установлено full. Узнайте больше о режимах симуляции.
При выполнении запросов к API добавьте заголовок X-Access-Key, значение которого — токен доступа.
Пример
Обязательно храните ключ доступа безопасно в файле .env.
- request.ts
- response.json
request.ts
Изучите сценарии использования
- Предпросмотр результатов транзакции: выявляйте и устраняйте проблемы, которые могут привести к сбою транзакций.
- Изменения активов и балансов: получайте точные долларовые значения для всех изменений балансов и активов.
- Оценка газа: точно предсказывайте затраты на газ до отправки транзакции.
- Переопределения состояния: изменяйте условия блокчейна, такие как временные метки и данные контракта, для тестирования различных сценариев.