1. Termékek
  2.   Email
  3.   C++
  4.   SimpleMail
 
  

E-mailek küldése/fogadása HTML tartalommal ingyenes C++ könyvtár segítségével

Nyílt forráskódú C++ e-mail könyvtár e-mailek küldésére és fogadására, amely támogatja a modern hitelesítést, MIME formázást, mellékleteket, SMTP-t, HTML tartalmat és SSL/TLS titkosítást.

Mi az a SimpleMail?

A modern C++ fejlesztés világában az e-mail funkciók hatékony és biztonságos kezelése kulcsfontosságú számos alkalmazás számára – az értesítési rendszerektől a felhasználói ellenőrzésekig. Míg sok magas szintű nyelv gazdag SMTP könyvtárakkal rendelkezik, a C++ hagyományosan hiányzott egy valóban könnyű és egyszerű megoldásból. A SimpleMail egy C++ könyvtár, amely a QtCore és QtNetwork modulokra épül. Egyszerű felületet biztosít MIME‑kompatibilis e-mail üzenetek küldéséhez SMTP szervereken, beleértve az SSL/TLS titkosítást, SMTP hitelesítést, egyszerű szöveg és HTML üzenettartalmat, fájl mellékleteket, több címzettet (To, Cc, Bcc) és így tovább. A körülményeket figyelő eszközök (pl. hőmérséklet‑érzékelők vagy okos otthoni átjárók) a SimpleMail segítségével értesíthetik a felhasználókat rendellenességek esetén.

A SimpleMail egy minimalista, mégis erőteljes könyvtár, amely lehetővé teszi a C++ alkalmazások számára e-mailek küldését mellékletekkel, HTML tartalommal és egyebekkel SMTP-n keresztül. A GitHub-on karbantartott SimpleMail egy Qt‑alapú SMTP kliens könyvtár, amely a használhatóságra, rugalmasságra és robusztusságra épül. Legyen szó asztali alkalmazásról vagy szerver‑oldali démonról C++‑ban, a könyvtár tiszta és gyakorlati felületet biztosít e-mailek küldéséhez. Ha Cutelyst vagy Wt keretrendszereket használ, a SimpleMail természetes választás felhasználói értesítések vagy tranzakciós e-mailek küldésére. A SimpleMail frissítő szellő a C++ fejlesztők számára, akik közvetlenül szeretnék integrálni az e‑mail képességeket alkalmazásaikba. Kis lábnyoma, erős támogatása a modern e‑mail protokolloknak és a Qt keretrendszerrel való zökkenőmentes integrációja pontosan azt nyújtja, amire sok C++ fejlesztő várt.

Previous Next

A SimpleMail használatának megkezdése

A SimpleMail telepítésének ajánlott módja a GitHub használata. Kérjük, használja a következő parancsot a zökkenőmentes telepítéshez.

SimpleMail telepítése GitHub-on

git clone https://github.com/cutelyst/simple-mail.git

HTML e-mail létrehozása C++ API segítségével

Az nyílt forráskódú SimpleMail könyvtár támogatja az e-mailek küldését egyszerű szöveg és HTML tartalom egyaránt, lehetővé téve a gazdagabb e‑mail formázást. Megadhat egy HTML törzset a vizuálisan vonzó e‑mailhez, miközben egyszerű szöveges alternatívát is biztosít azoknak az e‑mail klienseknek, amelyek nem támogatják a HTML‑t, vagy azoknak a felhasználóknak, akik inkább egyszerű szöveget szeretnének. A könyvtár egyszerűvé teszi a formázott e‑mailek képekkel vagy egyedi stílusokkal való küldését, mivel lehetővé teszi a HTML tartalmat az üzenetben. Az alábbi kódrészlet bemutatja, hogyan küldhetnek a fejlesztők HTML e‑mailt beágyazott képekkel.

Hogyan küldjünk HTML e-mailt beágyazott képekkel C++ API segítségével?

#include 

int main() {
    SimpleMail::Mailer mailer("smtp.gmail.com", 587);
    mailer.setUsername("your-email@gmail.com");
    mailer.setPassword("your-password");

    SimpleMail::Mail mail;
    mail.setSender("your-email@gmail.com");
    mail.addTo("recipient@example.com");
    mail.setSubject("HTML Email with Image");

    // HTML content with an embedded image
    mail.setBody(
        "

Welcome!

" "

This is an HTML email with an inline image:

" "Company Logo", SimpleMail::Mail::BodyType::Html ); // Attach an image and reference it in HTML using CID mail.addAttachment("logo.png", "logo", "image/png"); if (mailer.sendMail(mail)) { std::cout << "HTML email sent successfully!" << std::endl; } else { std::cerr << "Error: " << mailer.lastError() << std::endl; } return 0; }

SMTP támogatás hitelesítéssel

Az nyílt forráskódú SimpleMail könyvtár teljes körű SMTP hitelesítési támogatást nyújt C++ alkalmazásokban. A könyvtár támogatja mind az egyszerű, mind a bejelentkezés alapú hitelesítési módszereket. Ez biztosítja a kompatibilitást a legtöbb SMTP szerverrel, beleértve a Gmailt, az Outlookot és az egyedi szervereket is. Az alábbi hasznos kódrészlet megmutatja, milyen egyszerűen konfigurálhatják a C++ fejlesztők az SMTP beállításokat, beleértve a STARTTLS‑t a 587‑es porton.

Hogyan konfiguráljuk az SMTP beállításokat C++ alkalmazásokban?

SimpleMail::Sender sender;
sender.setHost("smtp.example.com");
sender.setPort(587);
sender.setConnectionType(SimpleMail::Sender::TlsConnection);
sender.setUser("your-email@example.com");
sender.setPassword("your-password");

E-mailek küldése mellékletekkel C++-ban

A mellékletek hozzáadása az e‑mailekhez gyakori igény, és a SimpleMail ezt zökkenőmentesen kezeli. A könyvtár egyszerűvé teszi új e‑mailek generálását és fájlok csatolását ezekhez az üzenetekhez néhány sor kóddal. Gondoskodik a melléklet kódolásáról és a megfelelő MIME típusok beállításáról. A fejlesztők megadhatják a fájl útvonalát, illetve opcionálisan egy egyedi fájlnevet a melléklethez. Az alábbi példa bemutatja, hogyan küldhetnek a fejlesztők fájl mellékletekkel rendelkező e‑mailt C++ API‑val.

Hogyan küldjünk e-mail üzenetet fájl mellékletekkel C++ könyvtár segítségével?

#include 

int main() {
    SimpleMail::Mailer mailer("smtp.example.com", 465);
    mailer.setUsername("user@example.com");
    mailer.setPassword("password");
    mailer.setSsl(true); // Enable SSL for secure connection

    SimpleMail::Mail mail;
    mail.setSender("user@example.com");
    mail.addTo("client@example.com");
    mail.setSubject("Invoice Attached");
    mail.setBody("Please find the attached invoice.");

    // Attach a PDF file
    mail.addAttachment("/path/to/invoice.pdf", "invoice.pdf", "application/pdf");

    if (mailer.sendMail(mail)) {
        std::cout << "Email with attachment sent!" << std::endl;
    } else {
        std::cerr << "Error: " << mailer.lastError() << std::endl;
    }

    return 0;
}

Jobb biztonság SSL/TLS támogatással

A biztonság elsődleges fontosságú az e‑mail kezelésében. A SimpleMail könyvtár támogatja a biztonságos kapcsolatot az SMTP szerverekkel SSL (Secure Sockets Layer) és TLS (Transport Layer Security) használatával. Az SMTP szerver konfigurálásakor megadhatja a ConnectionType‑ot Ssl‑ként vagy Tls‑ként, hogy a levelező szerverrel folytatott kommunikáció titkosított legyen. Ez megvédi az e‑mail tartalmát és a hitelesítési adatokat a lehallgatástól.

 Magyar