SuperAPI AI 工具集

netlify-forms

前端与建站

查看项目

更新于 10-16 06:50

技能介绍

用途:在 Netlify 托管站点上无需后端代码即可收集表单提交。部署时解析最终构建的 HTML 检测表单,存储提交内容、过滤垃圾信息并发送通知。

主要能力:在 <form> 上添加 data-netlify="true"(或 netlify 属性)即可被检测;部署时 Netlify 会移除该属性并注入隐藏的 form-name 输入。支持静态 HTML 表单、JS 渲染/SSR/框架表单(Next.js、Nuxt、SvelteKit、Astro、Gatsby)、AJAX 提交、文件上传、自定义成功页、蜜罐与 reCAPTCHA 防垃圾、邮件通知及通过 API 读取提交。

必要用法:需先在 Netlify UI 的 Forms > Enable form detection 启用检测,下次部署生效。JS 渲染/SSR 表单必须创建静态骨架文件 public/__forms.html,包含每个表单的隐藏副本、data-netlify="true"、隐藏 form-name 输入及所有字段且名称完全一致,否则提交会静默失败。SSR 应用中 AJAX 应 POST 到 /__forms.html,而非 /。请求体必须 URL 编码,不支持 JSON。文件上传每字段一个文件,最大 8 MB,超时 30 秒。自定义成功页使用无扩展名路径(如 /thank-you)。

限制:删除表单不可恢复,未来提交返回 404,历史提交不可用,需先导出 CSV;提交代码会被转义;数据存于 Netlify 数据库,仅能通过 UI/API/CSV 访问;PII 需定期导出删除。缺失的合法提交通常是 Akismet 误判,应先检查垃圾列表而非禁用过滤。