SendGrid集成Firebase Trigger Email出现535认证失败错误如何解决
问题排查与解决方案
第一步:验证SendGrid侧凭证有效性
- 确认你生成的是SMTP Relay专属API Key,而非普通Web API Key,创建时必须开通
Mail Send权限,且你要使用的发件人邮箱/域名已经在SendGrid的「Sender Authentication」环节完成验证,未验证的发件人会直接触发认证失败。 - 本地通过命令行直接测试API Key有效性,替换命令中对应参数后执行:
curl --url 'smtp://smtp.sendgrid.net:587' --user 'apikey:你的SendGrid API Key' --mail-from '已验证的发件人邮箱' --mail-rcpt '测试收件邮箱' --upload-file <(echo -e 'From: 已验证的发件人邮箱\nTo: 测试收件邮箱\nSubject: SendGrid密钥测试\n\n测试内容')
如果返回250状态码说明密钥本身有效,问题出在Firebase扩展配置环节;如果仍报认证错误,直接在SendGrid后台重新生成SMTP Relay密钥即可。
第二步:排查Firebase Trigger Email扩展配置问题
- 确认SMTP连接URI格式完全符合规范,正确格式为
smtps://apikey:你的SendGrid API密钥@smtp.sendgrid.net:465,重点检查几个常见错误点:- SMTP用户名固定为
apikey字符串,不能填写你自己的SendGrid账号邮箱,这是最常见的配置错误 - 如果API Key包含
+、/、=等特殊字符,必须做URL编码后再填入URI,对应编码为%2B、%2F、%3D - 端口和协议要对应:使用465端口时前缀为
smtps://,使用587端口时前缀为smtp://,不可混用
- SMTP用户名固定为
- 确认扩展配置中的
Default FROM address参数填写的是你在SendGrid已完成验证的发件人地址,不能使用未验证的地址。 - 配置修改完成后需要等待3-5分钟让扩展关联的云函数重新部署生效,不要修改后立刻测试。
兜底处理方案
如果以上步骤排查后仍存在问题,直接卸载Trigger Email扩展后重新安装,重新填写所有配置,排除旧配置缓存导致的异常。
内容的提问来源于stack exchange,提问作者Rami Abu-Shaqra
相关产品推荐
相关产品推荐

