在 Ropsten TestNet 上对 Uniswap 的交易失败

问题描述

我正在尝试以编程方式在 Uniswap 上创建交易,流程代码似乎在那里,但无论出于何种原因,交易在 Ropsten 上为 global.auth 失败。我使用 javascript 和 Nodejs 作为我的服务器。关于它为什么失败的任何建议?代码如下:

"Warning! Error encountered during contract execution [Reverted]"

解决方法

错误是正确的。您的交易应该不会成功。 转到 uniswap ropsten 路由器地址。 https://ropsten.etherscan.io/address/0x7a250d5630b4cf539739df2c5dacb4c659f2488d#readContract

有一个功能可以查看 ropsten 的 WETH 地址。 这是它返回的内容

0xc778417e063141139fce010982780140aa0cd5ab //Uniswap-router-factory-weth address

代替

const wethErc20Address = "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2";

您要求 uniswap 路由器使用您列出的 WETH 地址,而不是它使用的实际 WETH 地址。这样想想。为什么在 Uniswap 上流动性为 0 的地址会在 Uniswap 上工作?

最好先编写一些函数来检查流动性,然后再假设它存在。不,我不会告诉你怎么做。

,

行:

const tx = await exchangeContract.swapExactTokensForTokens(

应该是:

const tx = await exchangeContract.methods.swapExactTokensForTokens(

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...