eth_sendTransaction,如果数据字段包含code,则创建新的消息调用交易或创建合约。
参数
- Object - 交易对象
- from: DATA, 20 Bytes - 交易的发送地址。
- to: DATA, 20 Bytes -(创建新合约时可选)交易指向的地址。
- gas: QUANTITY -(可选,默认值:90000)为交易执行提供的gas。它会返回未使用的gas。
- gasPrice: QUANTITY -(可选,默认:待确认)GasPrice就是你愿意为一个单位的Gas出多少Eth,一般用Gwei作单位。所以Gas Price 越高, 就表示交易中每运算一步,会支付更多的Eth。
- value: QUANTITY - (可选) 此交易发送的value。
- data: DATA - (可选) 合约的编译后的代码
- nonce: QUANTITY -(可选)一个整数。允许你使用相同的nonce覆盖自己处于等待中交易。
params: [{
"from": "0xb60e8dd61c5d32be8058bb8eb970870f07233155",
"to": "0xd46e8dd67c5d32be8058bb8eb970870f072445675",
"gas": "0x76c0", // 30400,
"gasPrice": "0x9184e72a000", // 10000000000000
"value": "0x9184e72a", // 2441406250
"data": "0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675"
}]
返回:
- DATA, 32 Bytes - 交易hash或0hash(如果交易尚不可用)。
当创建合约的时候,使用eth_getTransactionReceipt
获取合约地址。
例子:
// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_sendTransaction","params":[{see above}],"id":1}'
// Result
{
"id":1,
"jsonrpc": "2.0",
"result": "0xe670ec64341771606e55d6b4ca35a1a6b75ee3d5145a99d05921026d1527331"
}