获取随机数时出现问题:“RandomWordsFulfilled”事件中的“success”属性返回 False

问题描述 投票:0回答:1

问题描述:

我在我的 Truffle 框架项目中使用 VRF 直接资助方法检索随机数时遇到困难,并使用 pragma Solidity ^0.8.9。在本地 Ganache 网络上进行单元测试期间,我仔细遵循了 Chainlink 文档。但是,“RandomWordsFulfilled”事件中的“success”属性始终返回 false。我怀疑存在潜在的与气体相关的问题,特别是在以下代码片段中:

(bool success, ) = _consumer.call{gas: req.callbackGasLimit}(callReq);

附加信息:

  • Pragma:可靠性^0.8.9
  • 测试环境:Ganache本地网络
  • Chainlink 文档已关注:是
  • 与天然气有关的怀疑:是

任何有关解决此问题的见解或建议将不胜感激。

已尝试过的步骤:

  1. 混音环境:

    • 尝试按照 Remix 环境中的确切步骤来复制问题。
    • 确保 Chainlink VRF 合约的设置和执行反映了本地环境。
  2. 当地环境:

    • 在本地环境中复制该场景,旨在找出 Remix 与本地设置之间的任何差异。
    • 检查与气体相关的配置以解决潜在问题。
  3. 气体调节:

    • 通过气体设置进行实验来解决问题。
    • 承认天然气调整正确性的不确定性。

请求协助:

尽管在 Remix 和本地环境中复制了这些步骤并尝试进行气体调整,问题仍然存在。寻求有关正确气体配置的指导或任何其他故障排除步骤来解决问题。

unit-testing solidity truffle chainlink
1个回答
0
投票

好吧,问题是我的,我调用了错误的消费者地址,这是包装器地址,而不是消费 vrf 的合约

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.