Ethers.js 给出 "resolver or addr is not configured for ENS name"

Ethers.js gives "resolver or addr is not configured for ENS name"

我有以下代码:

const ethereumProvider = ethers.getDefaultProvider(ETHEREUM_RPC);

const contract = new ethers.Contract(
  CONTRACT_ADDRESS,
  abi,
  ethereumProvider,
);

ethers 给我以下错误:

Error: resolver or addr is not configured for ENS name (argument="name", value="734574864865375122901309634679882622222228500042", code=INVALID_ARGUMENT, version=contracts/5.5.0)

我不知道这个数字是从哪里来的。我从不在任何地方将此作为论据。

此外,此错误仅在部署在 AWS Beanstalk 上时发生。

其实这个“奇怪的数字”是智能合约地址的十进制版本(应该是十六进制的)。

十六进制到十进制的转换发生在我传递环境变量的 YAML 文件中,因为值是数字而不是字符串。

option_settings:
  aws:elasticbeanstalk:application:environment:
    CONTRACT_ADDRESS=0x80ab79e5c36351Fb5DBe2b35E97f724EcA47AE4A

所以我只需要用双引号将值括起来:

option_settings:
  aws:elasticbeanstalk:application:environment:
    CONTRACT_ADDRESS="0x80ab79e5c36351Fb5DBe2b35E97f724EcA47AE4A"