博客
从 Formspree 迁移到 Formhook:十分钟指南
· 1 分钟阅读
表单后端这个品类最大的好处就是,更换服务商在设计上就是轻而易举的事:你的网站唯一的集成点就是一个 URL。下面是完整的迁移步骤,包括大家常常忘记的部分。
(为什么要迁移?价格、数据保留时长、欧盟托管等诚实对比,请见 Formhook 对比 Formspree 页面。本指南假设你已经做出了决定。)
第一步:导出现有提交数据
如果你使用的是 Formspree 付费计划,请先导出提交历史--根据他们的价格页面,导出功能从 Personal 计划开始提供。请在表单的提交记录视图中查找导出选项,在动手做其他任何事之前先把所有数据下载下来。如果你使用的是免费计划,请手动复制你需要的内容;他们的免费层级本就是为测试而设计的,所以理想情况下里面不会有太多生产数据。
无论你最终迁移到哪里,都请保留这份导出--保留一份不依赖特定服务商的客户数据备份,本来就是良好习惯。
第二步:创建 Formhook 表单
注册账号,创建一个表单,并复制它的密钥。顺便配置好这两项设置:
- CORS 白名单--添加你网站的域名,如果你同时提供
www版本,也一并加上。 - Turnstile--如果你之前有过类似 CAPTCHA 的防护,现在就启用 Turnstile,这样在切换过程中防护不会中断。蜜罐(honeypot)和速率限制已经默认开启。
第三步:只需改一行
- <form action="https://formspree.io/f/xyzabcde" method="POST">
+ <form action="https://formhook.app/f/fh_your-key" method="POST">字段名不需要改变--两家服务都接受标准的 form-encoded POST 请求,而 Formhook 还支持 JSON 和 multipart。如果你用的是 fetch/AJAX,同样只需在代码里替换这一行 URL。
可以用 grep 搜索以下内容,确保不遗漏任何一处:组件里的旧 URL、像 FORM_ENDPOINT 这样的环境变量,以及任何写死在各页面模板里的接口地址。多表单网站请注意:Formhook 的免费套餐支持多个表单,建议把每个旧表单对应到自己独立的密钥,而不是合并使用--这样每个表单的通知和设置才能保持独立清晰。
第四步:在已部署的网站上测试
完成部署后,从生产环境的 URL(而不是本地环境)提交一次真实测试--只有在这里,CORS、DNS 和 TLS 才会同时被真正验证。确认三件事:浏览器中显示成功状态、提交记录出现在你的 Formhook 仪表盘中、通知送达到你的设备。顺便完整跑一遍上线前检查清单。
第五步:停用旧表单
把旧的 Formspree 表单作为安全网再保留几天,确认提交数据已经稳定流向 Formhook 之后再停用它。把导出的数据妥善归档保存。整个迁移就是这些--一个属性、几项设置,加一次测试。之所以能这么简单,正是因为离开任何表单后端都同样容易:你的网站依赖的只是一个 URL,而不是被锁定在某个平台上。
一行代码上线可用的表单
欧盟托管,提交记录永久保存,所有套餐均支持推送通知。
免费开始无需信用卡 · 阅读文档