【问题标题】:Why don't the Uniswap and Kyberswap app values match code-returned values?为什么 Uniswap 和 Kyberswap 应用程序值不匹配代码返回的值?
【发布时间】:2021-12-11 14:09:52
【问题描述】:

使用价格发现机器人的基本代码:https://github.com/dappuniversity/price-bot(教程:https://www.youtube.com/watch?v=77G_-cMayRU&list=RDCMUCY0xL8V6NzzFcwzHCgB8orQ&index=2) ,我根据 Uniswap 和 Kyberswap 的应用程序值检查了我的输出值,但它们不匹配。

此外,Node.JS 应用程序返回的值似乎在我运行应用程序时并没有真正改变,这让我相信这些不是真正的实时结果?

【问题讨论】:

    标签: node.js ethereum cryptocurrency


    【解决方案1】:

    链接的 JS 脚本直接查询交换合约,但 UI 可能从 API 端点读取缓存和聚合数据。

    特别是 Uniswap 对合约上的脚本 calls getEthToTokenInputPrice() 函数,从您的节点提供商的区块链副本返回实时响应。

    但是,当您向 UI 输入数字时,它会查询一些最有可能被缓存的端点。根据响应,我还猜测它正在返回指定 blockNumber 的汇总价格。它还可能会考虑建议的交易费用和其他参数,并将它们计算到最终显示的价格。

    在交易所 UI 上使用非实时数据的原因之一可能是降低了他们自己的节点或第 3 方节点提供商的使用率。 Uniswap UI 使用 Infura 作为其他一些请求的提供者,这些请求具有基于使用情况的定价计划。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-05-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-04
      • 1970-01-01
      • 2011-12-12
      • 2012-06-19
      相关资源
      最近更新 更多