TypeScript पर ईमेल भेजना: लाइब्रेरी और कोड उदाहरण

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

TypeScript पर ईमेल भेजना: पूर्ण गाइड

TypeScript, JavaScript का एक सख्ती से टाइप किया गया सुपरसेट है जो आधुनिक वेब एप्लिकेशन में सक्रिय रूप से उपयोग किया जाता है। ईमेल भेजना बैकएंड, सूचनाओं और मार्केटिंग के लिए एक महत्वपूर्ण कार्य है। इस लेख में, हम TypeScript पर ईमेल भेजने के लिए कई लाइब्रेरी पर विस्तार से चर्चा करेंगे, जिसमें सेटअप, सरल और HTML ईमेल भेजना, साथ ही अटैचमेंट के साथ काम करना शामिल है।



ईमेल भेजने के लिए TypeScript क्यों?

TypeScript टाइपिंग जोड़ता है, जो डेवलपमेंट के दौरान त्रुटियों की संभावना को कम करता है। ईमेल भेजते समय यह विशेष रूप से महत्वपूर्ण है: SMTP होस्ट, पोर्ट, क्रेडेंशियल्स और ईमेल विकल्पों के लिए सही प्रकार runtime त्रुटियों से बचने में मदद करते हैं। इसके अलावा, TypeScript आधुनिक async/await कंस्ट्रक्ट को सपोर्ट करता है, जो कोड को साफ और अधिक समझने योग्य बनाता है।



TypeScript पर ईमेल भेजने के लिए मुख्य लाइब्रेरी

  • nodemailer — Node.js के लिए सबसे लोकप्रिय लाइब्रेरी, TypeScript के साथ पूरी तरह से संगत। SMTP, Sendmail, अटैचमेंट, HTML टेम्पलेट को सपोर्ट करता है।
  • @sendgrid/mail — TypeScript टाइप्स के साथ Node.js के लिए आधिकारिक SendGrid क्लाइंट। SendGrid API का उपयोग करता है, SMTP की आवश्यकता नहीं है।
  • aws-sdk (SES) — Amazon Simple Email Service। बल्क मेलिंग के लिए शक्तिशाली समाधान, AWS के साथ एकीकरण।
  • emailjs — TypeScript सपोर्ट वाली हल्की लाइब्रेरी, लेकिन कम लोकप्रिय।


TypeScript के साथ nodemailer की स्थापना और कॉन्फ़िगरेशन

npm के माध्यम से पैकेज इंस्टॉल करें:

npm install nodemailernpm install @types/nodemailer --save-dev

SMTP (Gmail, Yandex, Mail.ru आदि) के माध्यम से ईमेल भेजने का मूल उदाहरण:

import nodemailer from 'nodemailer';

interface EmailOptions { to: string; subject: string; text?: string; html?: string;}

async function sendEmail(options: EmailOptions): Promise<void> { const transporter = nodemailer.createTransport({ host: 'smtp.gmail.com', port: 587, secure: false, // 465 पोर्ट के लिए true auth: { user: 'your-email@gmail.com', pass: 'your-password-or-app-password', }, });

const mailOptions = { from: '"आपका नाम" <your-email@gmail.com>', to: options.to, subject: options.subject, text: options.text, html: options.html, };

const info = await transporter.sendMail(mailOptions); console.log('ईमेल भेजा गया:', info.messageId);}

// उपयोगsendEmail({ to: 'user@example.com', subject: 'TypeScript से नमस्ते!', html: '<h1>परीक्षण</h1><p>यह एक HTML ईमेल है।</p>',});

महत्वपूर्ण: Gmail के लिए "असुरक्षित ऐप्स तक पहुंच" सक्षम करें या App Password का उपयोग करें। प्रोडक्शन के लिए OAuth2 का उपयोग करना बेहतर है।



TypeScript पर SendGrid के माध्यम से ईमेल भेजना

SendGrid एक तैयार API प्रदान करता है जिसमें SMTP की आवश्यकता नहीं है। स्थापना:

npm install @sendgrid/mail

भेजने का उदाहरण:

import sgMail from '@sendgrid/mail';

sgMail.setApiKey('YOUR_SENDGRID_API_KEY');

interface SendGridMessage { to: string; from: string; subject: string; html: string;}

async function sendWithSendGrid(message: SendGridMessage): Promise<void> { try { await sgMail.send(message); console.log('SendGrid के माध्यम से ईमेल भेजा गया'); } catch (error) { console.error('भेजने में त्रुटि:', error); }}

sendWithSendGrid({ to: 'user@example.com', from: 'sender@yourdomain.com', subject: 'SendGrid + TypeScript परीक्षण', html: '<p>यह संदेश SendGrid API के माध्यम से भेजा गया है।</p>',});


TypeScript पर अटैचमेंट के साथ ईमेल भेजना

nodemailer किसी भी प्रकार के अटैचमेंट को सपोर्ट करता है। PDF फ़ाइल के साथ उदाहरण:

import nodemailer from 'nodemailer';import path from 'path';

async function sendWithAttachment()

अनुशंसाएँ