// code为本合约名
void check_trx(const name &code)
{
auto tx_size = transaction_size();
char tx[tx_size];
auto read_size = read_transaction(tx, tx_size);
eosio_assert( tx_size == read_size, "read_transaction failed");
auto trx = eosio::unpack<eosio::transaction>( tx, read_size );
eosio::action first_action = trx.actions.front();
eosio_assert(trx.actions.size() == 1 && first_action.name == name("transfer") && first_action.account == code, "wrong transaction");
}
网友评论