如何在Heroku部署运行Salesforce Web-to-lead表单并创建Lead记录
操作步骤指引
1. 预处理Salesforce Web-to-Lead HTML文件
- 先检查你拿到的HTML里的
oid字段值是否正确,这是你的Salesforce组织唯一ID,Web-to-Lead提交时必须带该参数才能匹配到你的组织 - 确认表单提交地址为
https://webto.salesforce.com/servlet/servlet.WebToLead?encoding=UTF-8,这是Salesforce官方Web-to-Lead接收地址,不要修改 - 若要自定义表单样式,直接修改HTML中的CSS部分即可,不要动
<input type="hidden"开头的隐藏字段,尤其是oid、retURL这类核心字段 - 可将
retURL的值改为表单提交后用户跳转的页面地址,比如后续部署完成的站点首页、提交成功提示页
2. 准备Heroku部署的项目文件
- 在本地新建空文件夹作为项目目录,把修改完成的Web-to-Lead HTML文件重命名为
index.html放入该文件夹 - 新建名为
Procfile的文件(注意无后缀名),放到项目根目录,文件内写入以下内容:web: python -m http.server $PORT
该配置是告知Heroku使用内置Python环境的HTTP服务器运行静态页面,无需额外配置运行环境 - 本地可提前测试表单可用性:在项目目录下打开终端执行
python -m http.server 8000,打开浏览器访问http://localhost:8000确认表单可以正常显示
3. 部署到Heroku
- 打开终端,cd进入刚才的项目目录
- 执行
heroku login,按照终端提示跳转至浏览器完成账号登录 - 执行
heroku create,命令会自动为你创建Heroku应用并生成随机的应用域名 - 初始化本地git仓库,依次执行以下命令:
git init git add . git commit -m "init web to lead form" - 将本地代码推送至Heroku,执行
git push heroku main(若你的本地分支为master则替换为git push heroku master) - 推送完成后执行
heroku open,即可直接打开部署完成的表单页面
4. 功能测试与排错
- 在表单填写测试数据点击提交,会跳转至你之前设置的
retURL地址 - 登录Salesforce后台进入Lead对象列表,检查是否生成了刚提交的测试数据
- 若没有生成Lead记录,按以下顺序排查:
- 检查HTML里的
oid是否和你的Salesforce组织ID完全一致 - 检查Salesforce后台Web-to-Lead功能是否开启:路径为设置→Feature Settings→Marketing→Web-to-Lead,确认
Web-to-Lead已启用处于勾选状态 - 检查提交的Lead数据是否有必填字段留空,Web-to-Lead会拒绝缺少必填字段的提交请求
- 检查Salesforce垃圾邮件拦截规则,是否拦截了测试提交内容,可到设置→垃圾邮件管理中查看拦截日志
- 检查HTML里的
内容的提问来源于stack exchange,提问作者Pavel Vitaliev
相关产品推荐
相关产品推荐

