Ich versuche, dem NFT-Tutorial hier zu folgen. Ich habe ein Konto bei Alchemy eingerichtet und Metamask hat die .sol-Datei erstellt. Ich habe eine .env-Datei in meinem Stammverzeichnis, die so aussieht:
API_URL = "https://eth-ropsten.alchemyapi.io/v2/your-api-key" PRIVATE_KEY = "your-metamask-private-key"
Mein Schutzhelmprofil sieht so aus:
/** * @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}`] } }, }
Wenn ich jedoch versuche zu kompilieren, erhalte ich immer wieder diese Fehlermeldung:
Ungültiger Wert {"url":https://eth-ropsten.alchemyapi.io/v2/your-api-key","account":["0xyour-metamask-private-key"]} Geben Sie für HardhatConfig.networks.ropsten einen Wert ein, der erforderlich ist HttpNetworkConfig.
Ich kann anscheinend nicht herausfinden, warum dies kein gültiger Wert für HttpNetworkConfig ist. Was ich habe, wo URL eine Zeichenfolge und Konten ein Array ist, scheint mit dem übereinzustimmen, was in der Netzwerkkonfigurationsdokumentation steht. Da es sich hierbei um einen Kompilierungsfehler handelt, sieht es nicht so aus, als ob es sich um ein Problem mit der tatsächlichen URL oder dem privaten Schlüssel handeln könnte, aber vielleicht irre ich mich. Ich gebe gerne zu, dass ich ein Neuling bin und nur ein oberflächliches Verständnis von Schutzhelmen, Zuverlässigkeit und sogar JS usw. habe. Vielen Dank für jede Hilfe.
事实证明,问题出在我的私钥上。仔细检查。