handle errors in geth webscoket replies, save signatures
This commit is contained in:
parent
1bfa8dba14
commit
4e9d5805f9
2 changed files with 8 additions and 0 deletions
|
|
@ -131,6 +131,7 @@ private:
|
||||||
|
|
||||||
ethereum_function_call_encoder m_ethereum_function_call_encoder;
|
ethereum_function_call_encoder m_ethereum_function_call_encoder;
|
||||||
|
|
||||||
|
std::string signature;
|
||||||
std::string geth_url;
|
std::string geth_url;
|
||||||
uint64_t t_id;
|
uint64_t t_id;
|
||||||
std::string account_address;
|
std::string account_address;
|
||||||
|
|
|
||||||
|
|
@ -140,6 +140,12 @@ void eth_rpc_client::on_message(websocketpp::connection_hdl hdl, message_ptr msg
|
||||||
ilog("json reposnse: ${list}", ("list", list));
|
ilog("json reposnse: ${list}", ("list", list));
|
||||||
|
|
||||||
const auto& b_obj = list[0].get_object().find( "id" );
|
const auto& b_obj = list[0].get_object().find( "id" );
|
||||||
|
|
||||||
|
if (true == list[0].get_object().contains( "error" )){
|
||||||
|
elog("error in json reposnse: ${list}", ("list", list));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
std::string result_str = list[0].get_object().find( "result" )->value().as<std::string>(1);
|
std::string result_str = list[0].get_object().find( "result" )->value().as<std::string>(1);
|
||||||
uint32_t num_owners = 0;
|
uint32_t num_owners = 0;
|
||||||
uint32_t i = 0;
|
uint32_t i = 0;
|
||||||
|
|
@ -167,6 +173,7 @@ void eth_rpc_client::on_message(websocketpp::connection_hdl hdl, message_ptr msg
|
||||||
balance = result_str;
|
balance = result_str;
|
||||||
break;
|
break;
|
||||||
case ETH_SIGN:
|
case ETH_SIGN:
|
||||||
|
signature = result_str;
|
||||||
break;
|
break;
|
||||||
case ETH_COINBASE:
|
case ETH_COINBASE:
|
||||||
account_address = result_str;
|
account_address = result_str;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue