You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

主网已部署VRF合约将ChainLink fee设为0.1 LINK而非2 LINK无法运行如何修复?

可直接修改fee的场景

如果你的VRF消费者合约预留了owner权限的fee修改接口,直接调用该接口将fee值更新为2 * 10 ** 18即可,无需重新部署合约,也不需要修改主合约的关联配置。

需重新部署合约的场景

如果fee变量在合约中定义为不可变变量,且没有预留修改接口,需按以下步骤操作:

  • 修改构造函数中的fee赋值逻辑,将原错误的0.1 LINK改为要求的2 LINK,修正后的代码参考:
constructor  () 
    VRFConsumerBase(
      0xf0d54349aDdcf704F77AE15b96510dEA15cb7952, // VRF Coordinator     
        0x514910771AF9Ca656af840dff83E8264EcF986CA// LINK Token
    )
{
    keyHash = 0xAA77729D3466CA35AE8D28B3BBAC7CC36A5031EFDC430821C02BC31A238AF445;
    fee = 2 * 10 ** 18; // 2 LINK
} 
  • 在主网部署修正后的新VRF消费者合约
  • 给新合约转入足够覆盖VRF请求的LINK代币
  • 修改主合约中关联的VRF消费者合约地址,替换为新部署的合约地址
  • 若你持有旧VRF合约的owner权限,可调用旧合约的withdrawLINK()方法提取剩余的LINK代币,转入新合约复用,避免资产浪费

注意:如果VRF消费者合约有调用白名单限制,需要提前将主合约地址添加到新VRF合约的白名单中,避免调用失败。

内容的提问来源于stack exchange,提问作者un4given

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 22:57:02