[英]ethereum rpc , send transaction
如何在ethereum上使用RPC發送事務。
在文檔上我看到了這個:
params: [{
"from": "0xb60e8dd61c5d32be8058bb8eb970870f07233155",
"to": "0xd46e8dd67c5d32be8058bb8eb970870f07244567",
"gas": "0x76c0", // 30400,
"gasPrice": "0x9184e72a000", // 10000000000000
"value": "0x9184e72a", // 2441406250
"data": "0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675"
}]
我在哪里找到這個:
data“:”0xd46e ....... 72445675
是否有任何簡單的庫我只能輸入金額和交易地址?
Web3.js是您可以使用的與以太坊交互的事實上的庫。 有很多關於如何發送交易的文檔 。
web3.eth.sendTransaction(transactionObject [, callback])
數據字段是包含消息的關聯數據的字節字符串,或者在合同創建事務的情況下是初始化代碼。 消息數據是編碼方法及其參數值。 您可以使用庫ethereumjs-abi對數據字段進行編碼和解碼。
要進行簡單的事務,您可以簡單地忽略除“from”,“to”和“value”之外的所有參數,並以這種方式調用方法:
params: [{ "from": "0xb60e8dd61c5d32be8058bb8eb970870f07233155", "to": "0xd46e8dd67c5d32be8058bb8eb970870f07244567", "value": "0x9184e72a", // 2441406250 }]
您只需要金額和地址就可以找到簡單的庫。 看來你的意思是“地址”。 與比特幣rpc不同,比特幣rpc只使用所有地址屬於錢包作為交易來源,你應該用ethereum rpc定義精確的“從”地址。
我在Web3上為NodeJS和Web瀏覽器編寫了幾個包裝器 。
后者有助於抽象連接和合同開發。
const { connect, useConnection, sendTransaction } = require("web3-wrap");
try {
if(window.web3){
await useConnection(window.web3);
}
else {
await connect();
}
const receipt = await sendTransaction({
to: "0x1234...",
value: 10 // amount to transfer, in wei
});
console.log("Receipt:", receipt);
}
catch(err){
console.error(err && err.message || err);
}
希望它好起來
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.