Skip to content

节点构建器的 HTTP 请求助手

n8n 为发出 HTTP 请求提供了灵活的帮助程序,从而抽象出了大部分复杂性。

仅限程序化风格

本文档中的信息适用于使用程序化样式构建节点。它不适用于声明式样式节点。

用法

调用函数内的助手。

1
2
3
4
5
6
7
8
9
// If no auth needed
const response = await this.helpers.httpRequest(options);

// If auth needed
const response = await this.helpers.httpRequestWithAuthentication.call(
	this, 
	'credentialTypeName', // For example: pipedriveApi
	options,
);

是一个对象:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
{
	url: string;
	headers?: object;
	method?: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'HEAD';
	body?: FormData | Array | string | number | object | Buffer | URLSearchParams;
	qs?: object;
	arrayFormat?: 'indices' | 'brackets' | 'repeat' | 'comma';
	auth?: {
		username: string,
		password: string,
	};
	disableFollowRedirect?: boolean;
	encoding?: 'arraybuffer' | 'blob' | 'document' | 'json' | 'text' | 'stream';
	skipSslCertificateValidation?: boolean;
	returnFullResponse?: boolean;
	proxy?: {
		host: string;
		port: string | number;
		auth?: {
			username: string;
			password: string;
		},
		protocol?: string;
	};
	timeout?: number;
	json?: boolean;
}	

是必填项。其他字段为可选。默认方法是。

关于可能的字段的一些说明:

  • :您可以使用常规 JavaScript 对象作为 JSON 负载、使用缓冲区作为文件上传、使用 FormData 实例作为以及作为。
  • :键值对。
    • 如果
    • 是 的实例,
    • 则 n8n 会
    • 自动添加 。
    • 如果
    • 是 的实例
    • ,则 n8n 会自动添加
    • 要覆盖此行为,请设置
    • 标题。
  • :如果您的查询字符串包含数据数组,例如,则 的值定义 n8n 如何格式化它。
    • (默认):
    • as
    • :
    • as
    • :
    • as
    • :
    • as
  • :用于基本身份验证。提供和。n8n 建议省略此项,而改用。
  • :默认情况下,n8n 会遵循重定向。您可以将其设置为 true 以防止这种情况发生。
  • :用于在没有正确证书的情况下调用 HTTPS 服务
  • :不只是返回主体,而是返回包含以下格式的更多数据的对象:
  • :n8n 可以检测内容类型,但您可以指定接收可以读取和交互的缓冲区。

例子

有关示例,请参阅Mattermost 节点

弃用之前的助手

之前的辅助实现使用了该库并暴露了它。该功能在版本 1 中已被移除。

为了最大限度地减少不兼容性,n8n 对另一个名为的库进行了透明转换。

如果您遇到问题,请在社区论坛GitHub上报告。

新助手迁移指南

新的助手更加强大、与库无关并且更易于使用。

所有新节点都应使用新的辅助函数。强烈建议您考虑将现有的自定义节点迁移到新的辅助函数。迁移时,主要注意事项如下:

  • 接受。不接受。
  • 现在必须如此。
  • 现在是
  • 根据标题使用来阐明有效载荷。
  • 现在是并且具有类似的行为