我正在尝试遵循此处的 NFT 教程。我已经在 Alchemy 上设置了帐户,并且 Metamask 创建了 .sol 文件。我的根目录中有一个 .env 文件,如下所示:
API_URL = "https://eth-ropsten.alchemyapi.io/v2/your-api-key" PRIVATE_KEY = "your-metamask-private-key"
我的安全帽配置文件如下所示:
/** * @type import('hardhat/config').HardhatUserConfig */ require('dotenv').config(); require("@nomiclabs/hardhat-ethers"); const { API_URL, PRIVATE_KEY } = process.env; module.exports = { solidity: { compilers: [ { version: "0.5.7" }, { version: "0.8.0" }, { version: "0.6.12" } ] }, defaultNetwork: "ropsten", networks: { hardhat: {}, ropsten: { url: API_KEY, accounts: [`0x${PRIVATE_KEY}`] } }, }
但是,当我尝试编译时,我不断收到此错误:
值无效 {“url”:“https://eth-ropsten.alchemyapi.io/v2/your-api-key”,“帐户”:[“0xyour-metamask-private-key”]} 对于 HardhatConfig.networks.ropsten - 需要类型值 HttpNetworkConfig。
我似乎无法弄清楚为什么这不是 HttpNetworkConfig 的有效值。我所拥有的 url 是一个字符串,accounts 是一个数组似乎符合网络配置文档中的内容。这是一个编译错误,因此看起来它不可能是实际网址或私钥的问题,但也许我错了。我愿意承认自己是一个菜鸟,对安全帽、可靠性、甚至 js 等只有粗略的了解。感谢任何帮助。
事实证明,问题出在我的私钥上。仔细检查。