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

部署NFT时Hardhat编译报错Expected a value of type HttpNetworkConfig求助

问题根源

你犯了非常基础的变量名拼写错误:
你在.env文件中定义的网络地址变量名为API_URL,但在hardhat.config.js的Ropsten网络配置里,url字段错误赋值为不存在的API_KEY变量。该变量未被定义,实际读取值为undefined,不符合Hardhat网络配置要求url为有效HTTP字符串的规则,因此抛出类型校验错误。

修复步骤

  1. 修正hardhat.config.js中Ropsten网络的url字段变量名,将API_KEY改为API_URL
  2. 确认.env中的两个占位参数已经替换为你自己的实际值:
    • 把your-api-key替换为Alchemy后台对应节点的实际API密钥
    • 把your-metamask-private-key替换为MetaMask导出的账户私钥,注意不要保留多余的空格
  3. 检查私钥前缀问题:如果你的MetaMask导出的私钥本身已经带有0x前缀,直接填写即可;如果不带前缀,可以保留配置里的0x${PRIVATE_KEY}写法。

修正后配置参考

.env文件

API_URL = "https://eth-ropsten.alchemyapi.io/v2/替换为你自己的Alchemy API Key"
PRIVATE_KEY = "替换为你自己的MetaMask私钥"

hardhat.config.js文件

/**
* @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_URL,
         accounts: [PRIVATE_KEY]
      }
   },
}

额外提示

Ropsten测试网目前已经停止服务,你可以替换为Goerli、Sepolia等仍在运行的以太坊测试网进行部署。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 00:15:03