ethereum rpc,发送交易

时间:2017-06-26 07:15:46

标签: ethereum

如何在ethereum上使用RPC发送事务。?

关于文档我看到了:

params: [{
  "from": "0xb60e8dd61c5d32be8058bb8eb970870f07233155",
  "to": "0xd46e8dd67c5d32be8058bb8eb970870f07244567",
  "gas": "0x76c0", // 30400,
  "gasPrice": "0x9184e72a000", // 10000000000000
  "value": "0x9184e72a", // 2441406250
  "data": "0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675"
}]

我在哪里找到这个:

  

数据“:”0xd46e ....... 72445675

是否有任何简单的库我只能输入金额和交易地址?

3 个答案:

答案 0 :(得分:0)

Web3.js是您可以使用的与以太坊交互的事实上的库。如何发送交易有很好的documentation

web3.eth.sendTransaction(transactionObject [, callback])

数据字段是包含消息的关联数据的字节字符串,或者在合同创建事务的情况下是初始化代码。消息数据是编码方法及其参数值。您可以使用库ethereumjs-abi对数据字段进行编码和解码。

答案 1 :(得分:0)

  1. "数据"如果您只是想进行简单的交易,那么参数不适合您。
  2. 要进行简单的交易,您可以简单地忽略除"从","到"之外的所有参数。和"价值"并以这种方式调用方法:

    params: [{ "from": "0xb60e8dd61c5d32be8058bb8eb970870f07233155", "to": "0xd46e8dd67c5d32be8058bb8eb970870f07244567", "value": "0x9184e72a", // 2441406250 }]

  3. 你问了一个只有数量和地址的简单库。看来你的意思是" to"地址。与比特币rpc不同,比特币rpc只使用所有地址属于钱包作为交易来源,你应该定义精确的"来自"地址与以太坊rpc。

答案 2 :(得分:0)

我为Web3NodeJS围绕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);
}

希望它好起来