InfoGrab DocsInfoGrab Docs

웹훅 응답

요약

Respond to Webhook 노드를 사용하여 수신되는 웹훅에 대한 응답을 제어합니다. 첫 번째 데이터 항목에 대해 한 번만 실행됩니다 Respond to Webhook 노드는 수신되는 첫 번째 데이터 항목을 사용하여 한 번만 실행됩니다.

Respond to Webhook 노드를 사용하여 수신되는 웹훅에 대한 응답을 제어합니다. 이 노드는 Webhook 노드와 함께 작동합니다.

Note

첫 번째 데이터 항목에 대해 한 번만 실행됩니다

Respond to Webhook 노드는 수신되는 첫 번째 데이터 항목을 사용하여 한 번만 실행됩니다. 자세한 내용은 하나 이상의 데이터 항목 반환을 참고하세요.

Respond to Webhook 사용 방법#

Respond to Webhook 노드를 사용하려면:

  1. 워크플로의 트리거 노드로 Webhook 노드를 추가합니다.
  2. Webhook 노드에서 RespondUsing 'Respond to Webhook' node로 설정합니다.
  3. 워크플로 어디에든 Respond to Webhook 노드를 추가합니다. 다른 노드의 데이터를 반환하려면 해당 노드들 뒤에 배치합니다.

노드 파라미터#

다음 파라미터를 사용하여 노드 동작을 구성합니다.

응답 형식#

웹훅 응답에 어떤 데이터를 보낼지 선택합니다.

  • All Incoming Items: 입력의 모든 JSON 항목으로 응답합니다.
  • Binary File: Response Data Source에 정의된 바이너리 파일로 응답합니다.
  • First Incoming Item: 첫 번째로 수신된 항목의 JSON으로 응답합니다.
  • JSON: Response Body에 정의된 JSON 객체로 응답합니다.
  • JWT Token: JSON Web Token(JWT)으로 응답합니다.
  • No Data: 응답 페이로드가 없습니다.
  • Redirect: Redirect URL에 설정된 URL로 리디렉션합니다.
  • Text: Response Body에 설정된 텍스트로 응답합니다. 기본적으로 HTML을 전송합니다(Content-Type: text/html).

노드 옵션#

Add Option을 선택하여 옵션을 보고 설정합니다.

  • Response Code: 사용할 응답 코드를 설정합니다.
  • Response Headers: 전송할 응답 헤더를 정의합니다.
  • Put Response in Field: All Incoming Items 또는 First Incoming Item으로 응답할 때 사용할 수 있습니다. 응답 데이터를 담을 필드의 이름을 설정합니다.
  • Enable Streaming: 활성화하면 스트리밍을 사용하여 데이터를 사용자에게 반환합니다. Response modeStreaming으로 구성된 트리거가 필요합니다.

n8n이 HTML 응답을 보호하는 방식#

n8n 버전 1.103.0부터, n8n은 웹훅에 대한 HTML 응답을 <iframe> 태그로 자동으로 감쌉니다. 이는 인스턴스 사용자를 보호하기 위한 보안 메커니즘입니다.

이는 다음과 같은 영향을 미칩니다.

  • HTML이 상위 문서에 직접 렌더링되는 대신 샌드박스된 iframe에서 렌더링됩니다.
  • 최상위 window나 로컬 스토리지에 접근하려는 JavaScript 코드는 실패합니다.
  • 인증 헤더는 샌드박스된 iframe에서 사용할 수 없습니다(예: 기본 인증). 짧은 수명의 액세스 토큰을 HTML에 내장하는 것과 같은 대체 방법을 사용해야 합니다.
  • 상대 URL(예: <form action="/">)은 작동하지 않습니다. 대신 절대 URL을 사용하세요.

템플릿 및 예제#

Respond to Webhook 통합 템플릿 둘러보기 또는 모든 템플릿 검색

워크플로 동작#

Respond to Webhook 노드를 사용할 때, 워크플로는 다음과 같이 동작합니다.

  • 워크플로가 Respond to Webhook 노드를 실행하지 않고 종료되면, 200 상태와 함께 표준 메시지를 반환합니다.
  • 첫 번째 Respond to Webhook 노드가 실행되기 전에 워크플로에서 오류가 발생하면, 500 상태와 함께 오류 메시지를 반환합니다.
  • 첫 번째 노드 이후에 두 번째 Respond to Webhook 노드가 실행되면, 워크플로는 이를 무시합니다.
  • Respond to Webhook 노드가 실행되었지만 웹훅이 없었던 경우, 워크플로는 Respond to Webhook 노드를 무시합니다.

웹훅에 전송된 응답 출력하기#

기본적으로 Respond to Webhook 노드에는 노드의 입력 데이터를 포함하는 단일 출력 분기가 있습니다.

원할 경우, 웹훅에 전송된 응답을 포함하는 두 번째 출력 분기를 활성화할 수 있습니다. 이 보조 출력을 활성화하려면, 캔버스에서 Respond to Webhook 노드를 열고 Settings 탭을 선택합니다. Enable Response Output Branch 옵션을 활성화합니다.

이제 노드에는 두 개의 출력이 생깁니다.

  • Input Data: 노드의 입력을 그대로 전달하는 원래 출력입니다.
  • Response: 웹훅에 전송된 응답 객체입니다.

하나 이상의 데이터 항목 반환(사용 중단됨)#

Note

1.22.0에서 사용 중단됨

n8n 1.22.0에서는 All Incoming Items 옵션을 사용하여 모든 데이터 항목을 반환하는 기능이 추가되었습니다. n8n은 이 섹션에서 설명하는 우회 방법을 사용하는 대신, 최신 버전의 n8n으로 업그레이드할 것을 권장합니다.

Respond to Webhook 노드는 수신되는 첫 번째 데이터 항목을 사용하여 한 번만 실행됩니다. 이는 표현식을 사용하는 경우에도 마찬가지입니다. Loop 노드를 사용하여 강제로 반복하도록 할 수 없습니다. 워크플로는 실행되지만, 웹훅 응답에는 여전히 첫 번째 실행 결과만 포함됩니다.

하나 이상의 데이터 항목을 반환해야 하는 경우, 다음 옵션 중 하나를 선택하세요.

  • Respond to Webhook 노드를 사용하는 대신, Webhook 노드의 Respond에서 When Last Node Finishes 옵션을 사용합니다. 워크플로가 출력하는 최종 데이터를 반환하려는 경우 이 방법을 사용합니다.
  • Aggregate 노드를 사용하여 여러 항목을 단일 항목으로 변환한 다음, Respond to Webhook 노드로 데이터를 전달합니다. Aggregate를 **All Item Data (Into a Single List)**로 설정합니다.

웹훅 응답

n8n v2.29
원문 보기
요약

Respond to Webhook 노드를 사용하여 수신되는 웹훅에 대한 응답을 제어합니다. 첫 번째 데이터 항목에 대해 한 번만 실행됩니다 Respond to Webhook 노드는 수신되는 첫 번째 데이터 항목을 사용하여 한 번만 실행됩니다.

Respond to Webhook 노드를 사용하여 수신되는 웹훅에 대한 응답을 제어합니다. 이 노드는 Webhook 노드와 함께 작동합니다.

Note

첫 번째 데이터 항목에 대해 한 번만 실행됩니다

Respond to Webhook 노드는 수신되는 첫 번째 데이터 항목을 사용하여 한 번만 실행됩니다. 자세한 내용은 하나 이상의 데이터 항목 반환을 참고하세요.

Respond to Webhook 사용 방법#

Respond to Webhook 노드를 사용하려면:

  1. 워크플로의 트리거 노드로 Webhook 노드를 추가합니다.
  2. Webhook 노드에서 RespondUsing 'Respond to Webhook' node로 설정합니다.
  3. 워크플로 어디에든 Respond to Webhook 노드를 추가합니다. 다른 노드의 데이터를 반환하려면 해당 노드들 뒤에 배치합니다.

노드 파라미터#

다음 파라미터를 사용하여 노드 동작을 구성합니다.

응답 형식#

웹훅 응답에 어떤 데이터를 보낼지 선택합니다.

  • All Incoming Items: 입력의 모든 JSON 항목으로 응답합니다.
  • Binary File: Response Data Source에 정의된 바이너리 파일로 응답합니다.
  • First Incoming Item: 첫 번째로 수신된 항목의 JSON으로 응답합니다.
  • JSON: Response Body에 정의된 JSON 객체로 응답합니다.
  • JWT Token: JSON Web Token(JWT)으로 응답합니다.
  • No Data: 응답 페이로드가 없습니다.
  • Redirect: Redirect URL에 설정된 URL로 리디렉션합니다.
  • Text: Response Body에 설정된 텍스트로 응답합니다. 기본적으로 HTML을 전송합니다(Content-Type: text/html).

노드 옵션#

Add Option을 선택하여 옵션을 보고 설정합니다.

  • Response Code: 사용할 응답 코드를 설정합니다.
  • Response Headers: 전송할 응답 헤더를 정의합니다.
  • Put Response in Field: All Incoming Items 또는 First Incoming Item으로 응답할 때 사용할 수 있습니다. 응답 데이터를 담을 필드의 이름을 설정합니다.
  • Enable Streaming: 활성화하면 스트리밍을 사용하여 데이터를 사용자에게 반환합니다. Response modeStreaming으로 구성된 트리거가 필요합니다.

n8n이 HTML 응답을 보호하는 방식#

n8n 버전 1.103.0부터, n8n은 웹훅에 대한 HTML 응답을 <iframe> 태그로 자동으로 감쌉니다. 이는 인스턴스 사용자를 보호하기 위한 보안 메커니즘입니다.

이는 다음과 같은 영향을 미칩니다.

  • HTML이 상위 문서에 직접 렌더링되는 대신 샌드박스된 iframe에서 렌더링됩니다.
  • 최상위 window나 로컬 스토리지에 접근하려는 JavaScript 코드는 실패합니다.
  • 인증 헤더는 샌드박스된 iframe에서 사용할 수 없습니다(예: 기본 인증). 짧은 수명의 액세스 토큰을 HTML에 내장하는 것과 같은 대체 방법을 사용해야 합니다.
  • 상대 URL(예: <form action="/">)은 작동하지 않습니다. 대신 절대 URL을 사용하세요.

템플릿 및 예제#

Respond to Webhook 통합 템플릿 둘러보기 또는 모든 템플릿 검색

워크플로 동작#

Respond to Webhook 노드를 사용할 때, 워크플로는 다음과 같이 동작합니다.

  • 워크플로가 Respond to Webhook 노드를 실행하지 않고 종료되면, 200 상태와 함께 표준 메시지를 반환합니다.
  • 첫 번째 Respond to Webhook 노드가 실행되기 전에 워크플로에서 오류가 발생하면, 500 상태와 함께 오류 메시지를 반환합니다.
  • 첫 번째 노드 이후에 두 번째 Respond to Webhook 노드가 실행되면, 워크플로는 이를 무시합니다.
  • Respond to Webhook 노드가 실행되었지만 웹훅이 없었던 경우, 워크플로는 Respond to Webhook 노드를 무시합니다.

웹훅에 전송된 응답 출력하기#

기본적으로 Respond to Webhook 노드에는 노드의 입력 데이터를 포함하는 단일 출력 분기가 있습니다.

원할 경우, 웹훅에 전송된 응답을 포함하는 두 번째 출력 분기를 활성화할 수 있습니다. 이 보조 출력을 활성화하려면, 캔버스에서 Respond to Webhook 노드를 열고 Settings 탭을 선택합니다. Enable Response Output Branch 옵션을 활성화합니다.

이제 노드에는 두 개의 출력이 생깁니다.

  • Input Data: 노드의 입력을 그대로 전달하는 원래 출력입니다.
  • Response: 웹훅에 전송된 응답 객체입니다.

하나 이상의 데이터 항목 반환(사용 중단됨)#

Note

1.22.0에서 사용 중단됨

n8n 1.22.0에서는 All Incoming Items 옵션을 사용하여 모든 데이터 항목을 반환하는 기능이 추가되었습니다. n8n은 이 섹션에서 설명하는 우회 방법을 사용하는 대신, 최신 버전의 n8n으로 업그레이드할 것을 권장합니다.

Respond to Webhook 노드는 수신되는 첫 번째 데이터 항목을 사용하여 한 번만 실행됩니다. 이는 표현식을 사용하는 경우에도 마찬가지입니다. Loop 노드를 사용하여 강제로 반복하도록 할 수 없습니다. 워크플로는 실행되지만, 웹훅 응답에는 여전히 첫 번째 실행 결과만 포함됩니다.

하나 이상의 데이터 항목을 반환해야 하는 경우, 다음 옵션 중 하나를 선택하세요.

  • Respond to Webhook 노드를 사용하는 대신, Webhook 노드의 Respond에서 When Last Node Finishes 옵션을 사용합니다. 워크플로가 출력하는 최종 데이터를 반환하려는 경우 이 방법을 사용합니다.
  • Aggregate 노드를 사용하여 여러 항목을 단일 항목으로 변환한 다음, Respond to Webhook 노드로 데이터를 전달합니다. Aggregate를 **All Item Data (Into a Single List)**로 설정합니다.