نود کد n8n؛ خودکارسازی حرفه‌ای با جاوااسکریپت و پایتون

خلاصه مقاله

نود کد n8n اجازه می‌دهد داخل کارflowهای خودتان جاوااسکریپت یا پایتون بنویسید تا عملیات پیچیده‌ای مثل پردازش JSONهای تو در تو یا فراخوانی APIهای خاص را انجام دهید. در ادامه یاد می‌گیرید چه زمانی از این نود استفاده کنید و چه زمانی سراغ گره‌های آماده بروید.

مقدمه

اگر به‌دنبال خودکارسازی‌ای فراتر از قابلیت‌های آماده n8n هستید، نود کد راه‌حل شماست. با چند خط کد می‌توانید خروجی دلخواه بسازید یا داده‌های عجیب‌وغریب را به‌راحتی پردازش کنید.

نود کد چیست؟

این نود یک ویرایشگر داخلی برای JavaScript و Python دارد؛ یعنی می‌توانید همین داخل n8n کد بنویسید و اجرا کنید. دیگر نیازی به سرور جدا یا افزونه خاصی نیست.

کاربردهای کلیدی

  • محاسبات ریاضی سفارشی
  • پارس JSONهای چندلایه
  • فراخوانی APIهایی که نیاز به امضا یا پارامتر خاص دارند

ویژگی‌های مهم نود کد

ویژگیتوضیح
Helperهای آمادهفقط با this.helpers.httpRequest درخواست HTTP بفرستید.
دسترسی به داده‌های اجرامی‌توانید متغیرهای محیطی یا شناسه اجرا را بخوانید.
پردازش حجیمصدها هزار رکورد را بدون افت سرعت group یا filter کنید.

۴ نمونه عملی

۱) گروه‌بندی سفارش‌های مشتری

const groups = {};
for (const item of items) {
const key = item.json.customerId;
groups[key] ??= [];
groups[key].push(item.json);
}
return Object.keys(groups).map(c => ({ json: { customer: c, orders: groups[c] }}));

۲) ارسال تصویر به وردپرس

با چند خط کد می‌توانید رسانه را از طریق REST API وردپرس آپلود کنید درحالی‌که گره آماده این قابلیت را ندارد.

۳) فراخوانی Stripe با چند فیلتر ترکیبی

کد زیر مشتریان بین دو تاریخ را با وضعیت subscription خاص فیلتر می‌کند:

const res = await this.helpers.httpRequest({
method: 'GET',
url: 'https://api.stripe.com/v1/customers',
headers: { Authorization: 'Bearer sk_...' },
qs: { created: { gte: Date.parse('2024-01-01')/1000 }}
});
return res.data.filter(c => c.subscriptions.data[0]?.status === 'active');

۴) استخراج اطلاعات از JSON چندلایه

return items.map(i => ({ json: { name: i.json.user.profile.fullName }}));

چه موقع سراغ نود کد نرویم؟

برای کارهای ساده از گره‌های زیر استفاده کنید تا هم سرعت بالاتر باشد هم اشکال‌زدایی آسان‌تر:

  • If: تصمیم‌گیری دوسویه
  • Edit Fields: تغییر نام یا نوع فیلد
  • Filter: حذف رکوردهای ناخواسته
  • Merge: ادغام یا تقسیم داده
  • HTTP Request: APIهای ساده
  • Date & Time: محاسبه بازه زمانی
  • Wait: تأخیر قبل از ادامه
  • Loop Over Items: تکرار روی هر آیتم

راهنمای تازه‌کارها

  1. از AI کمک بگیرید: ChatGPT یا Copilot برایتان کد می‌نویسد؛ فقط خواسته‌تان را دقیق بنویسید.
  2. ورودی و خروجی را بشناسید: همیشه ساختار items را با console.log بررسی کنید.
  3. کوچک شروع کنید: ابتدا یک تابع ساده مثلاً حذف فاصله‌های اضافی تست کنید.

جمع‌بندی

نود کد n8n ابزار قدرتمندی است ولی سوءمصرفش سربار نگهداری می‌آورد. برای منطق خاص یا پارس پیچیده از آن استفاده کنید و کارهای معمولی را به گره‌های آماده بسپارید تا workflowهایتان تمیز و سریع بمانند.

دیدگاه‌ خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *