-
bitcoin $82509.744848 USD
-0.81% -
ethereum $2499.081744 USD
-2.87% -
tether $0.999143 USD
-0.02% -
bnb $742.547641 USD
-3.61% -
xrp $1.399572 USD
-0.68% -
usd-coin $0.999762 USD
0.00% -
solana $110.412247 USD
-4.44% -
tron $0.332119 USD
-0.79% -
hyperliquid $85.886428 USD
-1.83% -
zcash $1225.463379 USD
-1.72% -
dogecoin $0.085294 USD
-2.89% -
monero $544.074153 USD
-1.93% -
chainlink $12.883698 USD
-2.15% -
cardano $0.239466 USD
-5.54% -
unus-sed-leo $8.892211 USD
-0.23%
Uniswap“批准”与“交换”:有什么区别? (流程指南)
Approving a token on Uniswap is a separate gas-costly transaction that grants the router permission to spend—no tokens move yet; only later does the swap transfer assets.
2026/04/01 13:19
了解批准交易
1. 当用户将钱包连接到 Uniswap 并选择之前未授权支出的代币时,界面会提示“批准”操作。
2. 此批准不是交换 - 它是一个单独的以太坊交易,它修改代币合约的限额映射,以允许 Uniswap 的路由器合约从用户的钱包中提取指定的金额。
3. 批准交易消耗gas并在链上确认,但此阶段没有代币移动——仅授予许可。
4. 用户可以批准无限额度或设置自定义限额;然而,许多钱包默认为无限批准,除非手动调整。
5. 一旦获得批准,相同的配额在未来的交换中仍然有效,直到被撤销或覆盖,即使在不同的 Uniswap 版本或使用相同路由器地址的第三方接口中也是如此。
交换执行流程
1. 审批成功后,用户在启动“互换”操作之前输入输入/输出金额、滑点容限和截止日期参数。
2. 交换交易调用 Uniswap 的 Router 合约,该合约在内部执行转账:从用户钱包中提取批准的代币并存入输出代币作为回报。
3. 此步骤涉及实际资产移动——输入代币被记入借方,输出代币被记入贷方,并相应地重新平衡流动性池。
4. 如果实际价格偏离用户定义的阈值,则会触发滑点保护,导致交易恢复而不执行。
5. 每个交换都会生成一个在 Etherscan 上可见的唯一交易哈希,并通过日志确认与池储备相关的转入和转出事件。
燃气消耗差异
1. 批准交易通常需要 45,000 到 65,000 个 Gas 单位,具体取决于代币合约的复杂性和网络拥塞情况。
2. 由于多次内部调用(包括余额检查、储备更新、费用计算和事件排放),掉期交易通常会消耗 120,000 到 220,000 个 Gas 单位。
3. 重复使用现有的批准可以避免重复第一次的天然气成本,使后续的交换相对便宜。
4. 具有非标准实现的代币(例如需要重入防护或自定义传输逻辑的代币)可能会显着增加批准的 Gas 使用量。
5. 与主网以太坊执行相比,Optimism 上的 Uniswap v3 等第 2 层部署可将批准和交换 Gas 费用降低 90% 以上。
批准的安全影响
1. 无限批准赋予目标合约对批准的代币余额的永久控制权——即使被破坏或恶意升级。
2. 像 2021 BadgerDAO 前端妥协这样的历史漏洞利用了预先存在的无限批准来悄悄耗尽用户资金。
3. MetaMask 等钱包现在在批准高风险合约或设置无限限额时显示警告横幅。
4. Etherscan Token Approvals Checker等工具允许用户直接通过交易审核活跃配额并撤销不必要的配额。
5. 撤销需要自己的耗气交易,并且不会自动过期——用户必须主动管理权限以保持卫生。
常见问题解答
问:如果我在另一个 DEX 上交换了相同的代币,我可以跳过审批吗?答:不可以。批准是特定于合同的。批准用于 SushiSwap 路由器的代币对于 Uniswap 路由器无效 - 即使两者使用相同的代币地址。
问:为什么我的钱包显示“已批准”,但兑换仍然失败,提示“额度不足”?答:当批准的金额低于为交换选择的输入数量时,或者当代币的小数在批准设置期间被误解时,就会发生这种情况。
问:更改滑点会影响审批步骤吗?答:不需要。滑点设置仅适用于掉期交易。批准仅涉及最大可支出金额,而不涉及定价或执行条件。
问:我可以批准 Uniswap v2 的代币并在 v3 上无缝使用它吗?答:是的,前提是审批目标与接口使用的路由器合约地址相同。但是,如果之前仅授予 v2 的路由器,则 v3 的新路由器 (0x68b3465833fb72A70ecDF485E0e4C7bD82185493) 需要其自己的单独批准。
免责声明:info@kdj.com
所提供的信息并非交易建议。根据本文提供的信息进行的任何投资,kdj.com不承担任何责任。加密货币具有高波动性,强烈建议您深入研究后,谨慎投资!
如您认为本网站上使用的内容侵犯了您的版权,请立即联系我们(info@kdj.com),我们将及时删除。
- Sui 的 Hashi 推出:比特币流动性的发人深省的转变
- 2026-10-10 04:29:34
- 今日比特币价格:泰国 ETF 在“Pepeto 买家”激增之际推出
- 2026-10-10 04:29:34
- 卡尔达诺 (ADA) 价格预测:1000% 的飙升即将到来吗?
- 2026-10-10 04:23:47
- 比特币暴露的密钥面临量子风险:供应格局的变化
- 2026-10-10 04:23:47
- XRP Ledger通过权限委托和批量修改取得进展,增强机构能力
- 2026-10-10 02:15:20
- Coinbase 推出全球交易所:Deribit 整合和 Coinbase Pro 的华丽回归
- 2026-10-10 01:16:56
相关百科
如何将USDT从Bitget现货转至期货,为交易做准备?
2026-10-03 01:00:04
了解 Bitget 账户结构1. Bitget将用户资产分为不同的钱包:现货钱包、期货钱包、资金钱包。 2.现货钱包持有使用法定货币或稳定币通过市价订单或限价订单购买的加密货币。 3. 期货钱包是专门用于永续合约和交割期货合约的保证金、抵押品和结算的专用余额。 4. 这些钱包独立运行——如果没有明确...
开仓杠杆前如何设置Bitget期货止盈单?
2026-10-05 07:19:38
进入期货交易界面1. 通过官方网页平台或手机应用程序登录您的Bitget账户。 2. 从主菜单导航至衍生品部分,然后根据您的首选结算资产选择USDT 保证金期货或币本位保证金期货。 3. 从交易界面顶部显示的可用列表中选择特定的交易对,例如 BTC/USDT 或 ETH/USDT。 4、确认您的账户...
如何使用Bitget现货网格交易在指定价格范围内买卖?
2026-10-02 03:19:43
了解现货网格交易机制1. 现货网格交易的运作方式是在用户指定的范围内按照预定的价格间隔下一系列限价买卖订单。 2. 当市场价格达到预设水平时,系统自动执行交易,从波动中获取微利,无需人工干预。 3. 每个网格级别代表一个潜在的进入点和一个退出点,具体取决于价格方向和订单类型。 4. 用户在激活前定义...
如何查看MEXC期货订单是否已按触发价格成交?
2026-10-02 13:20:02
了解 MEXC 期货的触发价格执行1. MEXC 期货支持包括止损市价、止损限价和追踪止损类型的条件订单,所有这些订单都依赖于用户定义的触发价格来激活订单提交逻辑。 2. 触发价格不是执行价格——它仅作为基础订单的激活阈值。一旦触发,实际成交量取决于市场流动性和订单类型参数。 3. 对于止损市价订单...
如何将USDT从MEXC转移到币安而不支付不必要的网络费用?
2026-10-03 17:40:15
了解USDT网络兼容性1. USDT 存在于多个区块链上,包括以太坊 (ERC-20)、Tron (TRC-20)、BNB 智能链 (BEP-20) 等。 2. MEXC 根据地区和账户验证级别支持通过 ERC-20、TRC-20、BEP-20 和其他几个网络提款。 3. 币安在 TRC-20、BE...
如何以特定的退出价格下达 MEXC 期货限价单?
2026-10-02 05:40:29
了解 MEXC 期货的收盘限价订单1. 平仓限价订单是一种条件订单,专门用于以预定价格水平退出现有头寸,而不开立新头寸。 2. 与市价单或止损市价单不同,该指令要求交易者指定退出方向(多头或空头)以及下单的确切限价。 3. 订单保持挂起状态,直到标记价格达到或超过指定的限价,此时该订单在订单簿上成为...
如何将USDT从Bitget现货转至期货,为交易做准备?
2026-10-03 01:00:04
了解 Bitget 账户结构1. Bitget将用户资产分为不同的钱包:现货钱包、期货钱包、资金钱包。 2.现货钱包持有使用法定货币或稳定币通过市价订单或限价订单购买的加密货币。 3. 期货钱包是专门用于永续合约和交割期货合约的保证金、抵押品和结算的专用余额。 4. 这些钱包独立运行——如果没有明确...
开仓杠杆前如何设置Bitget期货止盈单?
2026-10-05 07:19:38
进入期货交易界面1. 通过官方网页平台或手机应用程序登录您的Bitget账户。 2. 从主菜单导航至衍生品部分,然后根据您的首选结算资产选择USDT 保证金期货或币本位保证金期货。 3. 从交易界面顶部显示的可用列表中选择特定的交易对,例如 BTC/USDT 或 ETH/USDT。 4、确认您的账户...
如何使用Bitget现货网格交易在指定价格范围内买卖?
2026-10-02 03:19:43
了解现货网格交易机制1. 现货网格交易的运作方式是在用户指定的范围内按照预定的价格间隔下一系列限价买卖订单。 2. 当市场价格达到预设水平时,系统自动执行交易,从波动中获取微利,无需人工干预。 3. 每个网格级别代表一个潜在的进入点和一个退出点,具体取决于价格方向和订单类型。 4. 用户在激活前定义...
如何查看MEXC期货订单是否已按触发价格成交?
2026-10-02 13:20:02
了解 MEXC 期货的触发价格执行1. MEXC 期货支持包括止损市价、止损限价和追踪止损类型的条件订单,所有这些订单都依赖于用户定义的触发价格来激活订单提交逻辑。 2. 触发价格不是执行价格——它仅作为基础订单的激活阈值。一旦触发,实际成交量取决于市场流动性和订单类型参数。 3. 对于止损市价订单...
如何将USDT从MEXC转移到币安而不支付不必要的网络费用?
2026-10-03 17:40:15
了解USDT网络兼容性1. USDT 存在于多个区块链上,包括以太坊 (ERC-20)、Tron (TRC-20)、BNB 智能链 (BEP-20) 等。 2. MEXC 根据地区和账户验证级别支持通过 ERC-20、TRC-20、BEP-20 和其他几个网络提款。 3. 币安在 TRC-20、BE...
如何以特定的退出价格下达 MEXC 期货限价单?
2026-10-02 05:40:29
了解 MEXC 期货的收盘限价订单1. 平仓限价订单是一种条件订单,专门用于以预定价格水平退出现有头寸,而不开立新头寸。 2. 与市价单或止损市价单不同,该指令要求交易者指定退出方向(多头或空头)以及下单的确切限价。 3. 订单保持挂起状态,直到标记价格达到或超过指定的限价,此时该订单在订单簿上成为...
查看所有文章














