簡體   English   中英

在安全帽上部署合同或創建 NFT 時出現錯誤:ProviderError: invalid sender

[英]On hardhat when deploying a contract or minting an NFT getting error: ProviderError: invalid sender

我正在使用 HardHat 在 Polygon (Matic) 上部署合約,它在部署或鑄造時大部分時間都可以工作......但是當我從測試網切換到主網時它通常會中斷。

例如:我從主網切換到 rpc-mumbai.maticvigil.com,然后我收到錯誤 ProviderError: invalid sender。

然后我更新了我的 hardhat.config.js 以指向 matic-mumbai.chainstacklabs.com,我能夠創建和部署合約而沒有錯誤。

我正在聯系,看看這是否是多邊形和/或安全帽發生的已知問題?

將此添加到您的 hardhat.config.js,在帳戶之后:

 gasPrice: 8000000000, // default is 'auto' which breaks chains without the london hardfork

完整條目:

  matic: {
      url: "https://matic-mumbai.chainstacklabs.com",
      accounts: [PRIVATE_KEY],
      gasPrice: 8000000000, // default is 'auto' which breaks chains without the london hardfork
    }

參考: https : //github.com/nomiclabs/hardhat/issues/1828

確認“The Vikk”的解決方案有效。 在私鑰之前還添加了帳戶詳細信息和 0x。

 mumbai: {
  url: "https://polygon-mumbai.g.alchemy.com/v2/<API_KEY>",
  accounts: [`0x${PRIVATE_KEY}`]
  }

我發現了“無效發件人”的問題。 這對我來說是錢包地址沒有發送任何交易,只有來自測試網水龍頭的存款。 無論出於何種原因,當我通過 Metamask 手動發送交易然后將其發送回來然后嘗試再次發出安全帽運行命令時,它使該錯誤消失。

然而,從我現在看到的情況來看,事務仍然沒有任何錯誤地掛起,並且 --verbose 沒有提供任何有用的信息。 這似乎是與倫敦硬分叉有關的某種沖突。 我還沒有解決這個問題。 如果我有更多信息,稍后將向您報告。

到目前為止我做了什么:

  1. 嘗試將gasPrice和/或gas添加到 hardhat.config.jsnetworks.matic 對象
  2. 試圖將0x放在 privateKey 前面
  3. 嘗試將chainId:80001添加到 hardhat.config.jsnetworks.matic 對象
  4. 嘗試將 gasPrice 提高到 500 gwei 以上
  5. 嘗試了 3 個不同的 RPC 端點,包括一個需要 API 密鑰的私有端點

Hardhat github 更新到2.6.2,也沒有解決問題。

同樣的問題在這里。 我嘗試了從 Vanity ETH 生成的私鑰以及來自我的 MetaMask 錢包的私鑰。 還嘗試添加0x前綴和帶 / 不帶 gasPrice 但得到相同的錯誤。

這是我的配置:

module.exports = {
  solidity: "0.8.2",
  networks: {
    mumbai: {
      url: "https://rpc-mumbai.maticvigil.com/",
      account: [process.env.PRIVATE_KEY],
      gasPrice: 8000000000,
    }
  }
};

任何人都有運氣解決這個問題?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM