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

Stripe webhook报错:TextDecoder is not defined(Node v10.9+Stripe v11.12.0)

解决Stripe Webhook报错TextDecoder is not defined

问题原因

你遇到的TextDecoder is not defined错误,核心原因是版本不兼容:

  • Stripe SDK v11.12.0已不再支持Node.js v10.9,官方从v10+版本开始要求Node.js最低为v14(Node.js v10早在2021年就终止了官方支持)
  • 在Node.js v10中,TextDecoder并非全局对象,而是存在于util模块内,高版本Stripe SDK默认全局调用该对象,导致报错

解决方案

方案1:升级Node.js版本(推荐)

直接将Node.js升级到v14或更高的LTS版本(比如v18、v20),这是最稳妥的解决方式,同时能获取Node.js的安全更新和新特性。

方案2:降级Stripe SDK到兼容版本

如果暂时无法升级Node.js,可以将Stripe SDK降级到支持Node.js v10的版本,比如v9.x系列:

  • 修改package.json中的stripe依赖为^9.0.0
  • 执行npm install重新安装依赖

方案3:临时全局挂载TextDecoder(不推荐)

作为临时过渡方案,可在代码最顶部手动将TextDecoder挂载到全局:

const { TextDecoder } = require('util');
global.TextDecoder = TextDecoder;

注意:这种方式可能引发其他潜在兼容性问题,仅适合短期过渡,长期仍建议升级Node.js。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 16:43:12