【问题标题】:what's the purpose of the approve function in erc 20erc 20 中批准功能的目的是什么
【发布时间】:2022-11-27 11:19:45
【问题描述】:

我是 solidity 和 erc20 的新手,所以我阅读了 openzeppelin 上的 ERC20 描述,发现这个功能对我来说不是很清楚。

approve(spender, amount)

允许的目的是什么花钱的人花费我的代币,而不是将我的代币发送到花钱的人直接地?

【问题讨论】:

    标签: solidity erc20


    【解决方案1】:

    您可以更改已批准的金额或完全撤销(仅未使用的金额)。但是您不能收回已经发送的转账。

    approve() 函数的一个常见用例是在 DEX(去中心化交易所)上进行交易。例如,您批准 DEX 合约地址使用您的 USDT 代币。当你想购买 XYZ 代币(针对 USDT)时,DEX 只需从你的地址中提取已经批准的 USDT 并将 XYZ 代币发送给你。

    【讨论】:

      【解决方案2】:

      Approve 是一个用于授予权限的函数 spender 可以是任何人,交易所或 EOA 可以从您的代币合约中提取尽可能多的次数,直到 _value。 您可以查看此参考here

      【讨论】:

        【解决方案3】:

        正如其他人所说,Approve 函数可以允许spender 拉取您地址中令牌的amount。可用于:DEX(去中心化交易所)或Custody services

        在托管服务中,当你approve托管商拿走你的token后,每当你的钱包收到token时,托管商就可以将你的token转入一些internal wallets并为你保管。 (这就像传统银行的运作方式一样)

        【讨论】:

          猜你喜欢
          • 2018-03-12
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-03-19
          • 2018-06-08
          • 2021-11-29
          相关资源
          最近更新 更多