Jak odesílat e‑maily pomocí Microsoft 365 Graph API v .NET aplikacích
Integrujte zabezpečené odesílání e‑mailů do svých .NET aplikací s podporou tvorby zpráv, OAuth2 autentizace a příloh souborů.
Stáhnout zkušební verzi zdarmaOdeslat e‑mail v C# pomocí Microsoft 365 Graph API
Integrace Microsoft Graph API do .NET aplikací umožňuje vývojářům zjednodušit proces odesílání zpráv přes služby Microsoft 365. Aspose.Email pro .NET zjednodušuje tento proces a nabízí rozšířené funkce, jako je správa příloh, sledování a zabezpečená komunikace. Knihovna vám umožní vytvářet a doručovat personalizovanou, výkonnou e‑mailovou komunikaci přímo z vašich .NET aplikací.
Klíčové výhody použití Aspose.Email s Microsoft Graph
Není vyžadován SMTP ani základní ověřování – použijte bezpečnou moderní token‑based autentizaci (OAuth2).
Integrace Microsoft 365 a Outlooku – snadno se připojte k poštovním schránkám a službám Microsoft 365.
Podniková úroveň pro .NET vývojáře – navrženo pro škálovatelnost, spolehlivost a firemní e‑mailové workflow.
Plně spravovaná API – bez externích závislostí – jednorázová .NET knihovna, bez potřeby Graph SDK nebo klientů třetích stran.
Podporuje .NET Framework a .NET Core / .NET 6+ – kompatibilní s moderními i staršími .NET prostředími.
Rychlé nasazení s minimální konfigurací – snadno použitelná API s ukázkovým kódem pro rychlou implementaci.
Ukázka kódu
Zažijte snadnost integrace odesílání e‑mailů Microsoft 365 do vaší .NET aplikace s vestavěným Graph klientem od Aspose.Email.
Ukázkový kód pro odeslání e‑mailu – C#
var client = GraphClient.GetClient(authProvider);
var message = new MailMessage(...);
client.Send(message);
Jak to funguje
Microsoft Graph je RESTful webové API, které umožňuje přístup ke službám Microsoft 365, včetně možnosti odesílat e‑maily. Při odesílání e‑mailů přes Microsoft Graph jsou požadavky odesílány pomocí HTTP POST na koncový bod /sendMail spolu s nákladem zprávy. Tento náklad je obvykle JSON objekt, který obsahuje obsah zprávy (příjemci, předmět, tělo atd.) a případné přílohy.
Po přijetí požadavku MS Graph jej zpracuje a vrátí HTTP status kód. Úspěšná operace odeslání vrátí odpověď 202 Accepted, což indikuje, že zpráva byla zařazena do fronty k doručení. Zpracování těchto odpovědí umožňuje vývojářům zajistit úspěšnou komunikaci nebo ladit případné problémy.
Autentizace požadavků Microsoft Graph
Volání Microsoft Graph není tak jednoduché jako odeslání HTTP požadavku – nejprve musíte vyřešit autentizaci. Graph API je chráněno Azure Active Directory (Azure AD), což znamená, že před jakýmkoli požadavkem musíte získat přístupový token. Tento token určuje, jaké operace můžete provádět, na základě oprávnění udělených během autentizačního procesu.
Pro autentizaci musíte nejprve nastavit registraci aplikace v Azure AD, definovat potřebná oprávnění a poté požádat o přístupový token pomocí vhodného OAuth toku. Jakmile máte token, zahrňte jej do Authorization hlavičky vašich požadavků.
Aspose.Email pro .NET zjednodušuje proces získávání a správy přístupového tokenu, což zajišťuje, že aplikace může bezpečně komunikovat s Microsoft Graph. Implementací jejího ITokenProvider rozhraní, vývojáři mohou efektivně získat token OAuth 2.0 potřebný pro autentizaci. Jakmile je v Azure portálu vytvořena registrace aplikace a byla udělena potřebná oprávnění, jako je Mail.Send, mohou vývojáři použít funkce knihovny k začlenění rozsáhlých e‑mailových funkcionalit do svých aplikací.
Začněte několika základními kroky:
- Zaregistrujte svou aplikaci v Azure portálu a udělte oprávnění, jako jsou
Mail.Sendpro odesílání e‑mailů. - Získejte přístupový token: Implementujte ITokenProvider rozhraní Aspose.Email pro .NET k získání tokenu OAuth 2.0 potřebného pro autentizaci.
- Instalujte Aspose.Email pro .NET prostřednictvím NuGet nebo stažením jeho DLL soubor.
Po absolvování těchto kroků budete dobře připraveni začít programovat.
Porozumění požadavkům a odpovědím Microsoft Graph
Požadavek: Data jako předmět zprávy, tělo, údaje o příjemcích a přílohy jsou strukturovány ve formátu JSON. Když je zavolána metoda Send, tato data jsou serializována a odeslána jako POST požadavek na Microsoft Graph endpoint /sendMail.
Odpověď: Odpověď z Graph API je vrácena jako stavový kód. Odpověď 202 Accepted indikuje úspěšné odeslání, zatímco chybové kódy jako 401 Unauthorized nebo 403 Forbidden mohou naznačovat problémy s autentizací či oprávněními.
.NET knihovna poskytuje vestavěné funkce pro formování, odesílání požadavků a parsování odpovědí při komunikaci s externími službami jako Microsoft Graph. Tyto funkce umožňují vývojářům zefektivnit komunikaci s Microsoft 365 službami (např. Outlook, Calendar, Contacts) bez nutnosti ručně vytvářet HTTP požadavky nebo parsovat surové JSON odpovědi.
Formování požadavků: Aspose.Email zjednodušuje tvorbu požadavků poskytováním specifických tříd a metod, které abstrahují složitost formování požadavků. Například vývojáři mohou pracovat s e‑maily, kalendáři a kontakty prostřednictvím intuitivních API, aniž by museli ručně stavět požadované Graph požadavky.
Odesílání požadavků: Knihovna obsahuje vestavěné mechanismy pro odesílání požadavků přímo na služby jako Microsoft Graph. Místo manuálního řešení autentizace a HTTP metod se o to postará Aspose.Email. To zahrnuje přidání potřebných hlaviček jako autorizační tokeny a typy obsahu, aby byl požadavek správně naformátován pro úspěšnou komunikaci s Microsoft službami.
Parsování odpovědí: S podporou parsování odpovědí může převádět surové JSON nebo XML odpovědi do strukturovaných objektů, jako jsou MailMessage, CalendarEvent nebo Contact. To eliminuje potřebu, aby vývojáři přímo zpracovávali JSON. Parsovaná data mohou být okamžitě použita v aplikaci, což činí integrační proces plynulejší a efektivnější.
Tyto funkce umožňují vývojářům soustředit se více na obchodní logiku než na správu podkladových složitostí při komunikaci s poštovními službami.
Kompletní příklad C# kódu pro odesílání e‑mailů s OAuth2 a Aspose.Email
Následující příklad ukazuje kompletní proces odeslání e‑mailu pomocí Graph API prostřednictvím Aspose.Email pro .NET. Několik řádků kódu vám umožní vygenerovat OAuth2 přístupový token, inicializovat Graph klienta, vytvořit zprávu a odeslat ji:
- Vytvořte instanci IGraphClient voláním GetClient metoda.
- Inicializujte objekt eml typu MailMessage třídy, nastavte její vlastnosti.
- Odešlete zprávu pomocí Odeslat metoda knihovny.
Kompletní příklad integrace OAuth2 a Microsoft Graph
using Aspose.Email;
using Aspose.Email.Clients.Graph;
// Generate the access token
AccessTokenProvider tokenProvider = new AccessTokenProvider();
// Create a Graph client
IGraphClient client = GraphClient.GetClient(tokenProvider, "tenant ID");
// Create a new message
var eml = new MailMessage(fromAddress, toAddress, subject, body);
// Send message
client.Send(eml);
Odesílání e‑mailů s přílohami
Odesílání e‑mailů s přílohami přes Microsoft Graph je jednoduché a efektivní s knihovnou Aspose.Email pro .NET. Přílohy mohou být jakéhokoli typu souboru, například dokumenty, obrázky nebo PDF, které jsou odesílány spolu se zprávou. To je obzvláště užitečné pro sdílení zdrojů, jako jsou zprávy, prezentace nebo jiné důležité dokumenty přímo z vaší .NET aplikace.
V následujícím úryvku kódu jsou přílohy přidány do objektu MailMessage před odesláním e‑mailu:
Ukázkový kód pro odeslání e‑mailu – C#
// Add attachments to the message
Attachment attachment = new Attachment("path_to_attachment");
eml.Attachments.Add(attachment);
Jak jsou přílohy zpracovány
- Načítání příloh: Příloha je načtena ze zadané cesty k souboru ("path_to_attachment"), která může být lokální soubor nebo stream. The Příloha třída vám umožňuje přidat jakýkoli typ souboru jako přílohu, což je velmi flexibilní.
- Přidání do e‑mailu: Jakmile je příloha vytvořena, je přidána do e‑mailové zprávy pomocí Attachments.Add() metoda. Tato metoda přidá soubor do MailMessage kolekce příloh objektu, která je automaticky zahrnuta při odeslání zprávy přes MS Graph.
- Odesílání e‑mailu: Jakmile jsou přílohy přidány do zprávy, Odeslat metoda z IGraphClient rozhraní odesílá e‑mail se všemi připojenými soubory.
Zpracování více příloh
Můžete snadno přidat více příloh opakováním procesu pro každý soubor. Zde je návod, jak připojit více než jeden soubor:
Attachment attachment1 = new Attachment("file1.pdf");
Attachment attachment2 = new Attachment("image.png");
eml.Attachments.Add(attachment1);
eml.Attachments.Add(attachment2);
Limity velikosti příloh
Je důležité poznamenat, že Microsoft Graph uplatňuje omezení velikosti e‑mailových zpráv. Celková velikost e‑mailu včetně příloh nesmí překročit 25 MB. Pokud potřebujete odeslat větší soubory, zvažte jejich nahrání do cloudové úložiště (např. OneDrive) a místo toho pošlete odkaz na soubor.
Chcete víc? Prozkoumejte plnou podporu Microsoft Graph
Aspose.Email pro .NET nabízí rozšířenou integraci Microsoft 365 přes Graph API. Můžete také:
Spravujte složky, zprávy a koncepty
Pracujte s přílohami a kategoriemi
Spravujte kontakty, události v kalendáři, zápisníky a další
Prozkoumejte kompletní Funkce Microsoft Graph.
Nainstalujte .NET API
Věnujte minutku instalaci knihovny do svého projektu a začněte vytvářet zabezpečená, škálovatelná Microsoft 365 e‑mailová řešení s Aspose.Email pro .NET. Vyberte nejpohodlnější způsob:
- Použijte NuGet Správce balíčků
- Odkazujte požadované assemblies
- Nebo jednoduše použijte následující příkaz v Package Manager Console ve Visual Studiu:
Příkaz
PM> Install-Package Aspose.Email