eth_sendTransaction
データフィールドにコードが含まれている場合、メッセージコールトランザクションまたはコントラクト作成トランザクションを作成します。
メモ
原文には次の説明しかない。
Creates new message call transaction or a contract creation, if the data field contains code.
しかし、通常の Ether を送るだけのトランザクションも実行可能なはず。
また、コントラクト作成のトランザクションの場合は、宛先 to を null または 0x にすれば良いはず。
パラメータ
1. Object - トランザクションオブジェクト
from : DATA
20バイト
トランザクションを送信するアドレス
to : DATA
トランザクション送信先のアドレス
コントラクト作成トランザクションの場合はオプショナル
gas : QUANTITY
オプショナル
デフォルト値: 90,000
トランザクション実行に使用されるガスの整数値
使用されなかったガスはアカウントに戻されます。
gasPrice : QUANTITY
オプショナル
デフォルト値: 今後決定予定
#todo ほんと?すでに決定しているのでは?コードを読む ガス支払い時に使用されるガスの価格
value : QUANTITY
このトランザクションで送信される Ether の値(単位は wei)
data : DATA
コンパイルされたコントラクトのコード
または、メソッドシグネチャとエンコードされたパラメータのハッシュ値
nonce : QUANTITY
オプショナル
未承認トランザクションと同じ nonce を使用することにより、トランザクションを上書きすることができます。
code:params.js
params: [{
"from": "0xb60e8dd61c5d32be8058bb8eb970870f07233155",
"to": "0xd46e8dd67c5d32be8058bb8eb970870f07244567",
"gas": "0x76c0", // 30400
"gasPrice": "0x9184e72a000", // 10000000000000
"value": "0x9184e72a", // 2441406250
"data": "0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675"
}]
戻り値
DATA
32バイト
または、トランザクションがまだ有効でない場合 0
注意
サンプル
code:example.sh
// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_sendTransaction","params":{see above},"id":1}' // Result
{
"id":1,
"jsonrpc": "2.0",
"result": "0xe670ec64341771606e55d6b4ca35a1a6b75ee3d5145a99d05921026d1527331"
}
参考
関連