목. 8월 14th, 2025

D: 🚀 n8n의 HTTP Node는 외부 API와의 연결을 쉽게 만들어주는 강력한 도구입니다. 이번 포스팅에서는 HTTP Node를 활용해 다양한 API 인증 방식을 처리하고, 실전에서 바로 쓸 수 있는 데이터 처리 예제까지 상세히 알아보겠습니다.


🔑 1. HTTP Node 기본 구조 이해하기

HTTP Node는 REST API 호출을 위한 핵심 노드로, 다음과 같은 주요 설정 항목이 있습니다:

  • URL: API 엔드포인트 주소
  • Method: GET, POST, PUT, DELETE 등
  • Headers: 인증 토큰, Content-Type 등
  • Query Parameters: URL 파라미터
  • Body: POST/PUT 요청 시 전송할 데이터

예시: 간단한 GET 요청

{
  "url": "https://api.example.com/users",
  "method": "GET",
  "headers": {
    "Accept": "application/json"
  }
}

🔐 2. 주요 API 인증 방식별 설정 방법

(1) Basic Auth

  • 아이디와 비밀번호를 Base64로 인코딩해 헤더에 추가합니다.
    "headers": {
    "Authorization": "Basic ${BASE64_ENCODED_CREDENTIALS}"
    }

    > TIP: n8n의 Credentials 기능으로 안전하게 저장할 수 있습니다!

(2) API Key

  • 키를 헤더나 쿼리 파라미터로 전달합니다.
    
    // 헤더 방식
    "headers": {
    "X-API-KEY": "your-api-key"
    }

// 쿼리 파라미터 방식 “url”: “https://api.example.com/data?api_key=your-api-key


#### **(3) OAuth 2.0**  
- n8n의 **OAuth2 API** 노드와 연동해 액세스 토큰을 자동 갱신합니다.  
```json
"headers": {
  "Authorization": "Bearer ${OAUTH2_ACCESS_TOKEN}"
}

(4) JWT (JSON Web Token)

  • JWT 생성 후 헤더에 추가합니다.
    "headers": {
    "Authorization": "Bearer ${GENERATED_JWT}"
    }

🛠 3. 실전 데이터 처리 예제

예제 1: 날씨 API에서 데이터 가공하기

  • OpenWeatherMap API 호출 후 필요한 필드만 추출:
    {
    "url": "https://api.openweathermap.org/data/2.5/weather?q=Seoul&appid=YOUR_KEY",
    "method": "GET",
    "response": {
    "output": {
      "temp": "{{$response.body.main.temp}}",
      "humidity": "{{$response.body.main.humidity}}"
    }
    }
    }

예제 2: Slack에 메시지 보내기

  • Slack Webhook을 활용한 POST 요청:
    {
    "url": "https://hooks.slack.com/services/YOUR_WEBHOOK",
    "method": "POST",
    "body": {
    "text": "🚨 n8n에서 알림이 도착했습니다!",
    "channel": "#general"
    }
    }

예제 3: 페이징 처리된 API 데이터 수집

  • 페이지별 데이터를 반복 처리 (Loop 노드와 조합):
    // 첫 페이지 호출
    "url": "https://api.example.com/data?page=1",
    // 다음 페이지는 {{$node["Loop"].json["nextPage"]}}로 동적 할당

💡 4. 문제 해결 팁

  • 429 Too Many Requests: Rate Limit 발생 시 Delay Node 추가
  • 401 Unauthorized: Credentials 재확인 또는 토큰 갱신
  • JSON 파싱 오류: JSON.parse() 대신 n8n의 내장 표현식 사용

📌 마무리

n8n의 HTTP Node는 API 연동의 핵심입니다! 인증 방식과 데이터 가공 방법을 익히면,
📊 CRM, 📨 메시징 플랫폼, 🌐 공공 데이터 등 다양한 서비스와 연동이 가능해집니다.

도전해보세요!

  • 연습용 API: JSONPlaceholder
  • 고급 활용: Webhook 수신 + Conditional Logic 조합

궁금한 점은 댓글로 남겨주세요! 👇

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다