在 B2B SaaS 注册页面中,Node.js SMS API 只接受了未完成投递的验证链接,导致重试队列堆积,可能同一用户被多次发送。
核心需求:
- 发送、投递状态轮询、调度发送取消、模板管理、抑制与幂等重试。
- 适用于美国和欧盟地区的基本验证。
最佳做法:
- 让应用层持有模板版本、受众、抑制决策,SMS API 仅做投递基础设施。
- 记录四个时间戳:注册、发送接受、最新状态、验证完成,并使用幂等键。
- 轮询时遵守 24 h 幂等窗口,避免重复发送。
- 在应用层实现国家白名单和成本阈值,防止跨境或超量投递。
如果需要 webhook、语音、WhatsApp、RCS 或国内合规等功能,则需直接使用支持这些特性的提供商。
若仅需稳定的 SMS 交付,Infrai 的统一 REST 接口可在不改动业务代码的前提下更换后端实现。
