如何在ethereum上使用RPC发送事务。?
关于文档我看到了:
params: [{
"from": "0xb60e8dd61c5d32be8058bb8eb970870f07233155",
"to": "0xd46e8dd67c5d32be8058bb8eb970870f07244567",
"gas": "0x76c0", // 30400,
"gasPrice": "0x9184e72a000", // 10000000000000
"value": "0x9184e72a", // 2441406250
"data": "0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675"
}]
我在哪里找到这个:
数据“:”0xd46e ....... 72445675
是否有任何简单的库我只能输入金额和交易地址?
答案 0 :(得分:0)
Web3.js是您可以使用的与以太坊交互的事实上的库。如何发送交易有很好的documentation。
web3.eth.sendTransaction(transactionObject [, callback])
数据字段是包含消息的关联数据的字节字符串,或者在合同创建事务的情况下是初始化代码。消息数据是编码方法及其参数值。您可以使用库ethereumjs-abi对数据字段进行编码和解码。
答案 1 :(得分:0)
要进行简单的交易,您可以简单地忽略除"从","到"之外的所有参数。和"价值"并以这种方式调用方法:
params: [{
"from": "0xb60e8dd61c5d32be8058bb8eb970870f07233155",
"to": "0xd46e8dd67c5d32be8058bb8eb970870f07244567",
"value": "0x9184e72a", // 2441406250
}]
你问了一个只有数量和地址的简单库。看来你的意思是" to"地址。与比特币rpc不同,比特币rpc只使用所有地址属于钱包作为交易来源,你应该定义精确的"来自"地址与以太坊rpc。
答案 2 :(得分:0)
我为Web3和NodeJS围绕Web browsers编写了几个包装器。
后者有助于抽象连接和合同开发。
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);
}
希望它好起来