Transactions
連接不同的錢包並同時在每個錢包上進行交易
我想將我不同的 eth 錢包連接到一個合約,並且我想同時從不同的錢包中從該合約中索取代幣。有人知道我該怎麼做嗎?請幫助我
您無法控制您的交易何時被探勘。此外,乙太坊是確定性的,因此不會同時發生兩個動作。
您可以使用0xweb CLI 工具通過命令行發送交易,因此您可以一次發送多個索賠交易。如何一次執行多個 cli 命令,您可以線上搜尋有關您的系統、設置或工具的資訊。
- 安裝
$ npm i 0xweb -g
- 如果合約在https://bscscan.com/上驗證通過地址在本地安裝合約
$ 0xweb install 0x... --name MyClaimContract --chain bsc
- 找出你必須在契約中執行的方法。您可以從 bscscan 或執行
$ 0xweb contract abi MyClaimContract --chain bsc
- 假設在沒有參數的情況下呼叫該方法
claim
,那麼發送事務將是:$ 0xweb contract write MyClaimContract claim --chain bsc --account 0xYOUR_KEY
您也可以編寫一個腳本來執行此操作。
- 安裝dequanto庫
$ 0xweb init
- 在文件中創建腳本
claims.ts
import { MyClaimContract } from '@0xweb/bsc/MyClaimContract/MyClaimContract'; import { Config } from '@dequanto/Config'; async function executeClaims () { await Config.fetch(); // get your wallet keys let keys: string[] = []; let claimContract = new MyClaimContract(); let promises = keys.map(async key => { let account = { key }; let writer = await claimContract.claim(account); return writer.wait(); }); let receipts = await Promise.all(promises); console.log(`Transactions completed`, receipts.map(receipt => receipt.transactionHash)) } executeClaims();
- 執行腳本
$ npx atma run claims.ts