域名拼写纠错
当邮箱地址或域名检查中的域名部分检测到拼写错误时,smtp-probe 会自动建议修正后的域名。
工作原理
纠错引擎采用基于 AfterShip 算法 的三阶段方案:
- 整域匹配 — 将输入域名与已知有效域名列表进行 Levenshtein 编辑距离比较(阈值:2)。
- 合法性快速路径 — 如果 SLD 和 TLD 都在已知列表中,则无需纠错(域名可能有效但不在完整列表中)。
- 分拆 SLD/TLD 纠错 — 当 SLD 和 TLD 分别不匹配已知值时,单独纠正每个部分。
触发场景
| 场景 | 是否触发 |
|---|---|
check / report — MX 查询失败或无记录 | ✅ 是 |
verify — SMTP 连接失败(statusCode 0) | ✅ 是 |
verify — SMTP 返回 5xx(永久拒绝) | ✅ 是 |
verify — MX 查询失败或无记录 | ✅ 是 |
| 域名拼写正确或在已知列表中 | ❌ 否 |
域名是非邮箱域名(如 example.org) | ❌ 否 |
输出示例
💡 Did you mean gmail.com?或在 JSON/Markdown 输出中:
{
"email": "user@gmil.com",
"suggestion": "user@gmail.com"
}支持的邮箱服务商
纠错引擎覆盖主流邮箱服务商,包括:
- Gmail、Yahoo、Hotmail、Outlook、Live
- ProtonMail、iCloud、AOL、Yandex
- 国内服务商:163、126、Sina、QQ
- 等 120+ 个域名条目
限制
- 纠错建议基于编辑距离,可能无法覆盖所有拼写错误。
- 多级 TLD 域名(如
.co.uk、.com.au)会被正确处理。 - 仅对已知的邮箱服务商域名提供建议,不支持任意域名。