跳到主要内容

n8n 表单触发器节点#

使用 n8n 表单触发器在用户提交表单时启动工作流,从表单中获取输入数据。该节点会为你生成表单网页供使用。

你可以使用 n8n 表单节点添加更多页面来继续表单。

构建和测试工作流#

在构建或测试工作流时,使用测试 URL。使用测试 URL 可确保你能在编辑器 UI 中查看传入的数据,这对调试很有用。

有两种测试方式:

  • 选择执行步骤。n8n 打开表单。当你提交表单时,n8n 运行该节点,但不运行工作流的其余部分。
  • 选择执行工作流。n8n 打开表单。当你提交表单时,n8n 运行整个工作流。

生产工作流#

当你的工作流准备就绪时,切换到使用生产 URL。然后你可以激活工作流,当用户提交表单时,n8n 会自动运行它。

使用生产 URL 时,请确保你已保存并激活工作流。使用生产 URL 时,通过表单触发器流动的数据在编辑器 UI 中不可见。

使用查询参数设置默认选择#

你可以通过在 n8n 表单触发器提供的初始 URL 中使用查询参数来设置字段的初始值。发送到 n8n 表单触发器 URL 的相同查询参数会被表单中的每个页面接收。

仅适用于生产环境

查询参数仅在生产模式下使用表单时可用。在测试模式下,n8n 不会从查询参数填充字段值。

使用查询参数时,对使用特殊字符的任何字段名称或值进行百分号编码。这可确保 n8n 使用给定字段的初始值。你可以使用 URL Encode/Decode 等工具使用百分号编码格式化查询参数。

例如,假设你有一个具有以下属性的表单:

  • Production URL: https://my-account.n8n.cloud/form/my-form
  • Fields:
    • name: Jane Doe
    • email: [email protected]

With query parameters and percent-encoding, you could use the following URL to set initial field values to the data above:

 https://my-account.n8n.cloud/form/my-form?email=jane.doe%40example.com&name=Jane%20Doe 

Here, percent-encoding replaces the at-symbol (@) with the string %40 and the space character () with the string %20. This will set the initial value for these fields no matter which page of the form they appear on.

节点参数#

这些是主要的节点配置字段:

身份验证#

  • 基本身份验证

使用基本身份验证#

要配置此凭据,你需要:

  • 用于访问 HTTP 请求目标应用程序或服务的用户名
  • 与该用户名对应的密码

表单 URL#

表单触发器节点有两个 URL:测试 URL生产 URL。n8n 在节点面板顶部显示 URL。选择测试 URL生产 URL 以切换 n8n 显示的 URL。

表单 URL 的截图

  • 测试 URL:当你选择执行步骤执行工作流时,如果工作流未激活,n8n 会注册一个测试 webhook。当你调用该 URL 时,n8n 会在工作流中显示数据。
  • 生产 URL:当你激活工作流时,n8n 会注册一个生产 webhook。使用生产 URL 时,n8n 不会在工作流中显示数据。你仍然可以查看生产执行的工作流数据。在工作流中选择执行选项卡,然后选择你想要查看的工作流执行。

表单路径#

为表单设置自定义 slug。

表单标题#

输入表单的标题。n8n 将表单标题显示为网页标题和表单上的主 h1 标题。

表单描述#

输入表单的描述。n8n 将表单描述显示为表单上主 h1 标题下方的副标题。使用 \n<br /> 添加换行符。

表单元素#

为表单创建问题字段。选择添加表单元素以添加新字段。

每个字段都有以下设置:

  • 字段标签:输入显示在输入字段上方的标签。
  • 元素类型:从复选框自定义 HTML日期下拉列表电子邮件文件隐藏字段数字密码单选按钮文本文本区域中选择。
    • 选择复选框以在表单中包含复选框元素。默认情况下,表单用户可以选择的复选框数量没有限制。你可以通过将限制选择选项指定为精确数字范围无限制来设置限制。
    • 选择自定义 HTML 以插入任意 HTML。
      • 你可以包含链接、图像、视频等元素。你不能包含 <script><style><input> 元素。
      • 默认情况下,自定义 HTML 字段不包含在节点输出中。要在输出中包含自定义 HTML 内容,请填写关联的元素名称字段。
    • 选择日期以在表单中包含日期选择器。有关格式化日期的更多信息,请参阅使用 Luxon 处理日期和时间
    • 选择下拉列表 > 添加字段选项以添加多个选项。默认情况下,下拉列表是单选的。要使其成为多选,请打开多选
    • 选择单选按钮以在表单中包含单选按钮元素。
    • 选择隐藏字段以包含表单元素而不在表单上显示它。你可以使用字段值参数设置默认值,或使用查询参数传递字段的值。
  • 必填字段:打开以要求用户在表单上完成此字段。

响应时机#

选择 n8n 何时向表单提交发送响应。你可以在以下时候响应:

  • 表单已提交:用户提交表单后立即向其发送响应。
  • 工作流完成:如果你希望工作流在向用户发送响应之前完成其执行,请使用此选项。如果工作流出错,它会向用户发送响应,告诉他们提交表单时出现问题。

节点选项#

选择添加选项以查看更多配置选项:

  • 附加 n8n 归属:关闭以隐藏表单底部的使用 n8n 自动化的表单属性。
  • 按钮标签:用于表单提交按钮的标签。n8n 将按钮标签显示为提交按钮的名称。
  • 表单路径:表单 URL 的最后一段,用于测试和生产。替换自动生成的 UUID 作为最后一个组件。
  • 忽略机器人:打开以忽略来自链接预览器和网络爬虫等机器人的请求。
  • 使用工作流时区:打开以使用工作流设置中的时区而不是 UTC(默认)。这会影响节点输出中 submittedAt 时间戳的值。
  • 自定义表单样式:使用 CSS 覆盖公共表单界面的默认样式。该字段预填充了默认样式,因此你只需更改需要的内容。

自定义表单触发器节点行为#

使用换行符格式化响应文本#

你可以使用以下方法之一向表单响应文本添加换行符:

• 在 formtedText 字段中使用 HTML 格式而不是纯文本 • 在发送响应之前将换行符(\n)替换为 HTML 换行标签(<br />) • 如果需要更多格式控制,请考虑使用自定义 HTML 响应页面

使用身份验证限制表单访问#

你可以使用以下选项之一向表单添加身份验证:

• 使用 OTP(一次性密码)字段和 TOTP 节点验证进行基于令牌的身份验证 • 添加带有表单身份验证的 Wait 节点作为辅助表单页面 • 在数据库中存储哈希密码并与表单提交进行比较以进行验证 • 如果需要高级身份验证,请使用 Google Forms 等外部身份验证提供商

模板和示例#

使用简单向量存储、表单触发器和 OpenAI 的 RAG 入门模板

作者:n8n Team

查看模板详情

将多个触发器统一到单个工作流中

作者:Guillaume Duvernay

查看模板详情

使用 n8n API 和表单触发器将工作流备份和删除到 Google Drive

作者:Arlin Perez

查看模板详情

浏览 n8n 表单触发器集成模板,或搜索所有模板