使用React EmailJS表单发送邮件时出现400错误,求排查方案
EmailJS 联系表单 400 错误排查要点
以下是导致POST https://api.emailjs.com/api/v1.0/email/send-form 400错误的常见原因:
- 表单字段与模板变量不匹配:核对EmailJS后台邮件模板中的变量名(如
{{user_email}}),和你前端表单输入框的name属性是否完全一致,大小写、拼写错误都会导致参数无法识别。 - 核心配置信息错误:检查初始化EmailJS的
public key,以及调用sendForm时传入的service ID、template ID,确保和EmailJS后台复制的内容完全一致,不要多空格、少字符或复制错误。 - 邮箱未完成验证:确认你关联的邮箱已经在EmailJS后台完成验证流程,未验证的邮箱会被系统拒绝发送请求。
- 跨域权限未配置:如果是本地开发(
localhost)或部署在特定域名下,需在EmailJS后台的Security设置中添加该域名到允许列表,否则跨域请求会被拦截导致400。 - 提交方式错误:必须使用EmailJS官方提供的
emailjs.sendForm()方法提交表单,原生表单提交会跳过EmailJS的参数处理逻辑,导致请求格式不符合要求。 - 必填字段缺失:检查邮件模板中是否设置了必填变量,若前端表单对应的字段为空或未提交,会触发参数校验失败。
内容的提问来源于stack exchange,提问作者Gavin-walsh
相关产品推荐
相关产品推荐

