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

ReactJS调用EmailJS发送邮件返回400错误,表单无法提交怎么办

React项目EmailJS调用400错误排查解决方案
  • 优先解决emailjs.min.js引入问题
    如果你是直接在index.html中引入CDN资源,先打开浏览器控制台输入emailjs,如果返回undefined说明资源加载失败。更稳定的方式是替换为npm包安装:
    安装命令:npm install @emailjs/browser --save
    组件内导入语句:import emailjs from '@emailjs/browser'
  • 检查请求参数格式是否合规
    400错误绝大多数为参数不匹配导致,即便ID正确也需符合调用规则:

    发送请求的四个必填项顺序不能错:服务ID、模板ID、模板参数对象、公钥,缺一不可
    标准调用参考代码:

    emailjs.send(
      '已确认正确的服务ID',
      '已确认正确的模板ID',
      {
        // 此处字段必须和EmailJS后台设置的模板变量完全一致,大小写也不能有差异
        name: formData.name,
        email: formData.email,
        message: formData.message
      },
      '已确认正确的公钥'
    ).then((res) => {
      console.log('发送成功', res)
    }).catch((err) => {
      console.log('发送失败', err)
    })
    
  • 检查模板变量完整性
    EmailJS后台模板中用到的所有变量,都必须在提交的参数对象中传递对应值,即使是空值也要明确传递,缺失变量会直接返回400错误。
  • 检查域名白名单配置
    确认EmailJS后台的允许域名列表中已添加当前项目的运行域名,本地开发场景需要额外添加http://localhost:3000这类本地访问地址,域名不在白名单内也会触发400错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 16:36:03