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

调用OpenSea API返回CERT_HAS_EXPIRED证书过期错误如何解决

错误原因

你使用的Node v8.11.2版本内置的根证书信任库过旧,2021年Let's Encrypt的旧DST Root CA X3根证书正式过期后,该版本Node默认不信任OpenSea API所用的ISRG Root X1新根证书,因此发起HTTPS请求时触发证书过期报错。

修复方案
  • 优先方案:升级Node版本
    你当前降级到v8.11.2完全没有必要,目前OpenSea官方SDK兼容Node v14及以上的稳定版本,直接升级到Node v16或v18的LTS长期支持版本,即可自动获得最新的根证书信任库,从根源解决证书校验问题。
  • 临时测试方案:禁用证书校验(仅本地测试使用,禁止生产环境使用)
    运行脚本时添加环境变量跳过TLS证书校验,启动命令修改为:
    NODE_TLS_REJECT_UNAUTHORIZED=0 node sell.js
    注意该方案会关闭所有HTTPS安全校验,存在数据被窃听、篡改的风险,仅可用于本地临时调试。
  • 兼容旧Node方案:手动注入根证书(如果必须保留Node v8.11.2版本)
    首先安装根证书依赖:
    npm install ssl-root-cas --save
    之后在你的sell.js代码最开头添加以下内容,手动引入有效的ISRG Root X1根证书:
const rootCas = require('ssl-root-cas/latest').create();
rootCas.addFile(require.resolve('ssl-root-cas/pems/isrgrootx1.pem'));
require('https').globalAgent.options.ca = rootCas;
额外注意事项

你代码中配置的Rinkeby测试链早已停止服务,OpenSea当前支持的测试链为Goerli、Sepolia,需要将代码中Network.Rinkeby替换为对应测试链的枚举值,否则后续请求也会报错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 10:15:00