eth_sendTransaction
创建一个新的消息调用交易,如果数据字段中包含代码,则创建一个合约。
参数
Object
- 交易对象,结果如下:
- from: DATA, 20字节 - 发送交易的源地址
- to: DATA, 20字节 - 交易的目标地址,当创建新合约时可选
- gas: QUANTITY - 交易执行可用gas量,可选整数,默认值90000,未用gas将返还。
- gasPrice: QUANTITY - gas价格,可选,默认值:待定(To-Be-Determined)
- value: QUANTITY - 交易发送的金额,可选整数
- data: DATA - 合约的编译带啊或被调用方法的签名及编码参数
- nonce: QUANTITY - nonce,可选。可以使用同一个nonce来实现挂起的交易的重写
params: [{
"from": "0xb60e8dd61c5d32be8058bb8eb970870f07233155",
"to": "0xd46e8dd67c5d32be8058bb8eb970870f07244567",
"gas": "0x76c0", // 30400
"gasPrice": "0x9184e72a000", // 10000000000000
"value": "0x9184e72a", // 2441406250
"data": "0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675"
}]
返回值
DATA
, 32字节 - 交易哈希,如果交易还未生效则返回0值哈希
当创建合约时,在交易生效后,使用eth_getTransactionReceipt
调用获取合约地址。
示例代码
请求:
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_sendTransaction","params":[{see above}],"id":1}'
响应:
{
"id":1,
"jsonrpc": "2.0",
"result": "0xe670ec64341771606e55d6b4ca35a1a6b75ee3d5145a99d05921026d1527331"
}