Когда я использую ERC20 для переноса, я получаю ошибку: Ошибка, возникшая во время выполнения контракта [Плохая инструкция]

#web3js #erc20

Вопрос:

Я пытаюсь использовать web3js для вызова переводов смарт-контрактов.
До этого я был авторизован, транзакция была успешно отправлена.
и я получаю TxHash,затем я использую это для запроса в etherscan, не удалось

TxHash: 0x7ab36f10de10b7543d17900bdb4546ec625de0853ade57e399563ba7cff9fc9b
мой код:

 const transfer = () =gt; {  // w3.eth.getBalance(req.body.fromAddress).then(ethBalance =gt; {  // console.log('eth balance:'   ethBalance)  // });   tokenContract.methods.balanceOf(req.body.fromAddress).call().then((balance) =gt; {  console.log('token balance:'   balance   "rn");  w3.eth.getTransactionCount(req.body.fromAddress, (nonceError, nonce) =gt; {  if (nonceError) {  return res.json({ code: 202, message: nonceError })  }  w3.eth.getGasPrice((gasPriceError, gasPrice) =gt; {  if (gasPriceError) {  return res.json({ code: 203, message: gasPriceError })  }  try {  tokenContract.methods.allowance(  req.body.toAddress, //address _owner  req.body.fromAddress //address _spender  ).call().then(allow =gt; {  console.log( 'approve amount'   allow)  })   let amount = new BigNumber(req.body.amount).multipliedBy(1000000).toNumber();  let rawTx = {  from: req.body.fromAddress,  to: erc20ContractAddress,  value: w3.utils.toHex(w3.utils.toWei('0', 'ether')),  nonce: w3.utils.toHex(nonce  ),  gasLimit: w3.utils.toHex(50000),  gasPrice: w3.utils.toHex(gasPrice.toString()),  // data: tokenContract.methods.transfer(req.body.toAddress, w3.utils.toHex(w3.utils.toWei('0.00002', 'wei')) ).encodeABI()  data: tokenContract.methods.transferFrom(req.body.fromAddress, req.body.toAddress, w3.utils.toHex(amount)).encodeABI()  }  let tx = new EthereumTx(rawTx);  tx.sign(Buffer.from(privateKey, 'hex'));  let serializedTx = tx.serialize();  let raw = '0x'   serializedTx.toString('hex')   w3.eth.sendSignedTransaction(raw, (err, txHash) =gt; {  console.log(err);  console.log(txHash);  if(err) {  return res.json({ code: 204, message: err })  } else {  return res.json({ code: 200, data: txHash, message: 'success' })  }  })  } catch(error) {  console.log(error)  return res.json({ code: 205, message: error })  }    })  })  })  }  

Эта проблема беспокоит меня уже несколько дней. Сначала я подумал, что этого недостаточно. Сравнив другие успешные транзакции, я обнаружил, что это не так. Я не знаю, в чем проблема