本篇记录一些常见的错误及其处理,大饼果子非C++出身,如有错误,欢迎指出
1. 合约执行错误
$ cleos push action eosio.token transfer '["eosio", "dabingguozi", "2.0000 SYS" ,"contract"]'
Error 3040003: Transaction should have at least one required authority
这是因为合约要求用户授权,合约代码如下
所以要执行以下命令
$ cleos push action eosio.token transfer '["eosio", "dabingguozi", "2.0000 SYS" ,"contract"]' -p eosio
就成功啦
2. account name不能够创建
$ cleos system newaccount eosio dabingguozi EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV --stake-net "1000 SYS" --stake-cpu "1000 SYS" --buy-ram-kbytes 8 -p eosio
2018-07-22T02:42:40.506 thread-0 main.cpp:438 create_action ] result: {"binargs":"0000000000ea305500dca79ab1e98e4900200000"} arg: {"code":"eosio","action":"buyrambytes","args":{"payer":"eosio","receiver":"dabingguozi","bytes":8192}}
2018-07-22T02:42:40.511 thread-0 main.cpp:438 create_action ] result: {"binargs":"0000000000ea305500dca79ab1e98e49809698000000000004535953000000008096980000000000045359530000000000"} arg: {"code":"eosio","action":"delegatebw","args":{"from":"eosio","receiver":"dabingguozi","stake_net_quantity":"1000.0000 SYS","stake_cpu_quantity":"1000.0000 SYS","transfer":false}}
Error 3050001: Account name already exists
因为account name是唯一的,出现这种情况没有办法,只能换一个名字啦