以太坊 eth_sendTransaction 通过 PHP curl
ethereum eth_sendTransaction via PHP curl
我正在尝试使用 PHP curl
发送以太坊交易
还有许多其他呼叫成功,但这个...
代码片段:
$url = "http://127.0.0.1:9999";
$data = array(
"jsonrpc" => "2.0",
"method" => "eth_sendTransaction",
"params" => array("from" => $f, "to" => $t, "gas" => $gv, "gasPrice" => $gp, "value" => $value),
"id" => "1"
);
$json_encoded_data = json_encode($data);
var_dump($json_encoded_data);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $json_encoded_data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen($json_encoded_data))
);
$result = json_decode(curl_exec($ch));
curl_close($ch);
$parsed = $result->result;
return $parsed;
JSON 编码数据:
{"jsonrpc":"2.0","method":"eth_sendTransaction","params":{"from":"0x35fa3c7edd23b23bd714fd075d243097e14ed937", "to":"0xdab9a603ed3f1cf7b2b89f1cb1b57145e4828796","gas":"0x15f90","gasPrice":"0x430e23400","value":"0x9b6e64a8ec60000"},"id":"1"}
交易未提交,除了日志 Notice 之外没有错误 PHP Notice: Undefined property: stdClass::$result in...
命令行:
curl -H "Content-type: application/json" -X POST --data '{"jsonrpc":"2.0","method":"eth_sendTransaction","params":[{"from":"0x35fa3c7edd23b23bd714fd075d243097e14ed937","to":"0xdab9a603ed3f1cf7b2b89f1cb1b57145e4828796","gas":"0x15f90","gasPrice":"0x430e23400","value":"0x9b6e64a8ec60000"}],"id":"1"}' http://localhost:9999
以上完美运行...
有人能指出我做错了什么吗?
您的 params
字段缺少包装数组。试试这个:
"params" => array(array("from" => ...
我正在尝试使用 PHP curl
发送以太坊交易还有许多其他呼叫成功,但这个...
代码片段:
$url = "http://127.0.0.1:9999";
$data = array(
"jsonrpc" => "2.0",
"method" => "eth_sendTransaction",
"params" => array("from" => $f, "to" => $t, "gas" => $gv, "gasPrice" => $gp, "value" => $value),
"id" => "1"
);
$json_encoded_data = json_encode($data);
var_dump($json_encoded_data);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $json_encoded_data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen($json_encoded_data))
);
$result = json_decode(curl_exec($ch));
curl_close($ch);
$parsed = $result->result;
return $parsed;
JSON 编码数据:
{"jsonrpc":"2.0","method":"eth_sendTransaction","params":{"from":"0x35fa3c7edd23b23bd714fd075d243097e14ed937", "to":"0xdab9a603ed3f1cf7b2b89f1cb1b57145e4828796","gas":"0x15f90","gasPrice":"0x430e23400","value":"0x9b6e64a8ec60000"},"id":"1"}
交易未提交,除了日志 Notice 之外没有错误 PHP Notice: Undefined property: stdClass::$result in...
命令行:
curl -H "Content-type: application/json" -X POST --data '{"jsonrpc":"2.0","method":"eth_sendTransaction","params":[{"from":"0x35fa3c7edd23b23bd714fd075d243097e14ed937","to":"0xdab9a603ed3f1cf7b2b89f1cb1b57145e4828796","gas":"0x15f90","gasPrice":"0x430e23400","value":"0x9b6e64a8ec60000"}],"id":"1"}' http://localhost:9999
以上完美运行...
有人能指出我做错了什么吗?
您的 params
字段缺少包装数组。试试这个:
"params" => array(array("from" => ...