금. 8월 15th, 2025

D: 🚀 n8n에서 Code Node는 단순한 자동화를 넘어 복잡한 비즈니스 로직을 구현할 수 있는 핵심 도구입니다!
오늘은 JavaScript/Python으로 직접 코드를 작성해 자동화의 한계를 뛰어넘는 10가지 실전 예시를 알려드리겠습니다.

1. 🔍 Code Node 기본 이해

  • 역할: 다른 노드로 처리하기 어려운 커스텀 로직 구현
  • 지원 언어: JavaScript(기본), Python(추가 설정 필요)
  • 입출력: $input, $node 객체로 데이터 접근 → return으로 결과 전달
// 기본 구조 예제
return {
  result: $input.first().json.message.toUpperCase()
};

2. 💡 10가지 실전 활용 예시

데이터 변형 마스터

// JSON 데이터 재구성
const rawData = $input.all();
return rawData.map(item => ({
  id: item.json.id,
  fullName: `${item.json.firstName} ${item.json.lastName}`,
  discount: item.json.price * 0.9
}));

외부 API 호출

// axios를 이용한 API 요청
const axios = require('axios');
const response = await axios.get('https://api.example.com/data');
return { apiData: response.data };

복잡한 조건 분기

// 다중 조건 처리
const score = $input.first().json.score;
let grade;

if (score >= 90) grade = 'A';
else if (score >= 80) grade = 'B';
else grade = 'C';

return { grade };

날짜/시간 계산

// 마감일 D-Day 계산
const deadline = new Date('2023-12-31');
const today = new Date();
return { 
  daysLeft: Math.ceil((deadline - today) / (1000 * 60 * 60 * 24)) 
};

데이터 검증

// 이메일 유효성 검사
const email = $input.first().json.email;
const isValid = /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email);
return { isValid, email };

암호화 처리

// SHA256 해시 생성
const crypto = require('crypto');
const hash = crypto.createHash('sha256')
                   .update($input.first().json.password)
                   .digest('hex');
return { hashedPassword: hash };

엑셀 데이터 처리

// 엑셀 데이터 가공
const items = $input.all();
const summary = {
  total: items.length,
  amountSum: items.reduce((sum, item) => sum + item.json.amount, 0)
};
return summary;

텍스트 분석

// 키워드 추출
const text = $input.first().json.content;
const keywords = text.toLowerCase().match(/\b(\w{4,})\b/g) || [];
return { 
  keywords: [...new Set(keywords)].slice(0, 5) 
};

이미지 메타데이터 처리

// Base64 이미지 분석
const imageData = $input.first().json.image.split(',')[1];
const buffer = Buffer.from(imageData, 'base64');
return {
  sizeKB: buffer.length / 1024,
  type: buffer.toString('hex', 0, 4)
};

에러 핸들링

// 안전한 데이터 처리
try {
  const data = $input.first().json;
  if(!data) throw new Error('No data');
  return { processed: data.value * 2 };
} catch (error) {
  return { error: error.message };
}

3. 🛠 Code Node 활용 팁

  • 디버깅: console.log() 사용 → n8n 실행 화면에서 확인
  • 모듈 사용: npm 패키지는 require()로 로드 (단, n8n 서버에 설치 필요)
  • 성능: 무거운 연산은 가능한 다른 노드로 분할
  • 보안: 민감한 데이터는 환경 변수에 저장

4. ❓ 자주 묻는 질문

Q. Python 코드를 사용하려면?
→ n8n 설치 서버에 Python 환경 구성 후 python-node 패키지 설치 필요

Q. 다른 노드의 출력을 어떻게 가져오나요?
$node["노드이름"].json["필드명"] 형식으로 접근

Q. 코드 실행 시간 제한이 있나요?
→ 기본 30초 제한 (n8n 설정에서 변경 가능)

🌈 마무리: Code Node는 n8n의 숨겨진 보석입니다! 위 예시들을 응용하면 CRM, ERP, CMS 등 어떤 시스템과도 연동할 수 있는 강력한 자동화 플로우를 구축할 수 있습니다.

💬 여러분의 창의적인 사용법을 댓글로 공유해주세요! 다음 시간에는 ‘n8n + ChatGPT 연동으로 지능형 워크플로우 만들기’를 다룰 예정입니다.

답글 남기기

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