javascript - Transferring TRC-20 Token using TronLink - Stack Overflow

please am trying to integrate sending any trc20 token using tronlink by clicking a button on my website

please am trying to integrate sending any trc20 token using tronlink by clicking a button on my website. I was able to send TRX using the JavaScript code below but I want to be able to send trc-20 like USDT, any help will be highly appreciated. Thanks

<!DOCTYPE html>
<html lang="en">
    <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    </head>
    <body>
        <div>
            <input type="text" name="numb" id="numb">
            <button onclick="sendtron()">Can you get tronweb from tronlink?</button>
      </div>
    <script>
        function sendtron(){
        var obj = setInterval(async ()=>{
            if (window.tronWeb && window.tronWeb.defaultAddress.base58) {
                clearInterval(obj)
                var tronweb = window.tronWeb
                var amount = document.querySelector('#numb').value;
                var tokens = amount * 1000000
                var tx = await tronweb.trx.sendTransaction("TWs2Z7dLMcPnXi9pnWqCUPzAnqUv6T54dy", tokens)
                var signedTx = await tronweb.trx.sign(tx)
                var broastTx = await tronweb.trx.sendRawTransaction(signedTx)
                console.log(broastTx);
                
            }
        });
    }
    </script>
    </body>
</html>

please am trying to integrate sending any trc20 token using tronlink by clicking a button on my website. I was able to send TRX using the JavaScript code below but I want to be able to send trc-20 like USDT, any help will be highly appreciated. Thanks

<!DOCTYPE html>
<html lang="en">
    <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    </head>
    <body>
        <div>
            <input type="text" name="numb" id="numb">
            <button onclick="sendtron()">Can you get tronweb from tronlink?</button>
      </div>
    <script>
        function sendtron(){
        var obj = setInterval(async ()=>{
            if (window.tronWeb && window.tronWeb.defaultAddress.base58) {
                clearInterval(obj)
                var tronweb = window.tronWeb
                var amount = document.querySelector('#numb').value;
                var tokens = amount * 1000000
                var tx = await tronweb.trx.sendTransaction("TWs2Z7dLMcPnXi9pnWqCUPzAnqUv6T54dy", tokens)
                var signedTx = await tronweb.trx.sign(tx)
                var broastTx = await tronweb.trx.sendRawTransaction(signedTx)
                console.log(broastTx);
                
            }
        });
    }
    </script>
    </body>
</html>

Share Improve this question edited Feb 8, 2021 at 21:51 Alex Howansky 53.7k8 gold badges84 silver badges101 bronze badges asked Feb 8, 2021 at 21:43 vin deizvin deiz 111 silver badge3 bronze badges
Add a ment  | 

1 Answer 1

Reset to default 5

TRC20 are actually smart contracts. tronscan USDT link To transfer TRC20 from your address to another address, you will be calling TRC20's transfer function, below is a snippet of Tron USDT's code.

function transfer(address _to, uint256 _value) public returns (bool) {
    require(_to != address(0));
    require(_value <= balances[msg.sender]);

    // SafeMath.sub will throw if there is not enough balance.
    balances[msg.sender] = balances[msg.sender].sub(_value);
    balances[_to] = balances[_to].add(_value);
    Transfer(msg.sender, _to, _value);
    return true;
  }

TronWeb TRC20 Contract Interaction documentation. You can use tronWeb's triggerSmartContract function to create a raw transaction, sign and broadcast.

  1. create raw transaction
var senderAddress = tronweb.defaultAddress.base58;
var receiverAddress = "TV3nb5HYFe2xBEmyb3ETe93UGkjAhWyzrs"; 
var amount = 100;
var parameter = [{type:'address',value:receiverAddress},{type:'uint256',value:amount}]
var options = {
  feeLimit:100000000                    
}

const transactionObject = await tronWeb.transactionBuilder.triggerSmartContract(
    tronweb.address.toHex(contractAddress), 
    "transfer(address,uint256)", 
    options, 
    parameter,
    tronweb.address.toHex(senderAddress)
);

Note: address are all in base58 format, we need to convert it to hex format using tronweb.address.toHex(address) at transactionObject. The parameter variable is where we set the receiver address and amount.

  1. Sign
var signedTransaction = await tronWeb.trx.sign(transactionObject.transaction);
  1. Broadcast
var broadcastTransaction = await tronWeb.trx.sendRawTransaction(signedTransaction);
console.log(broadcastTransaction); 

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745037839a4607627.html

相关推荐

  • javascript - Transferring TRC-20 Token using TronLink - Stack Overflow

    please am trying to integrate sending any trc20 token using tronlink by clicking a button on my website

    9小时前
    60

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信