E-mail az MHT-nak

A Microsoft Outlook és más népszerű e-mail kliensek az EML(MIME RFC 822 szabvány) szabványos formátumot használják. Az EML az elektronikus levelezés vagy e-mail rövidítése. Hasonlóképpen, ez az e-mail üzenetek Internet Message Format protokolljában található fájlba mentett e-mail üzenetek fájlkiterjesztése. Az EML-fájlok általában egyszerű ASCII-szöveget tartalmaznak a fő üzenet törzséhez, fejlécekhez és hiperhivatkozásokhoz, valamint mellékletekhez. Az EML formátumhoz azonban kapcsolódik egy fenyegetés, hogy lehet adathalász e-mail, és a melléklet a következőket teheti: Megfertőzheti számítógépét rosszindulatú programmal, ha megnyitja a mellékletet.

Továbbá, ha ezekről a fájlokról egy offline másolatot mentünk, akkor a kártevő könnyen érintheti őket, és adatok elveszhetnek. Ezenkívül az EML fájlok megnyitásához támogatott alkalmazásra van szükségünk (Microsoft Outlook 365, Microsoft Windows Mail, Mozilla Thunderbird stb.).Tehát egy megelőző intézkedés lehet az MHT formátumra való átalakítása.

Ingyenes e-mail feldolgozás API

Az Aspose.Email Cloud a díjnyertes API-nk, amely lehetőséget kínál a népszerű e-mail formátumok létrehozására, manipulálására és más támogatott formátumokká való átalakítására. Így hozza létre saját felhőalapú OAuth-ot támogató e-mail-kezelési megoldását, és küldjön egyszerű vagy MIME e-mail üzeneteket mellékletekkel vagy anélkül. Hozzáférés az API-hoz bármilyen platformon, beleértve a Windows, Linux, macOS és bármilyen típusú alkalmazást, például asztali számítógépen, mobileszközön, weben, hibriden stb.

Az API programozási nyelven belüli közvetlen használatához próbálja meg a nyelvspecifikus Cloud SDK használatát, amely a Cloud SDK köré épül fel. Ebben a cikkben az EML-fájlok MHT-formátumba konvertálására fogunk összpontosítani az Aspose.Email Cloud SDK for .NET használatával. Az SDK használatához rendelkeznie kell a támogatott (vagy a támogatott).NET-keretrendszerek egyikével:

  • .NETFramework 2.0
  • .NETFramework 4.5.2
  • .NETStandard 2.0
  • MonoAndroid 6.0
  • Xamarin.iOS 1.0
  • Xamarin.Mac 2.0

Telepítés

A Cloud SDK használatához az első lépés a telepítés. Letölthető a NuGet és a GitHub oldalakon. A NuGet telepítésének végrehajtásához hajtsa végre a következő parancsot a terminálablakban:

nuget install Aspose.Email-Cloud

.NET CLI használatakor:

dotnet add package Aspose.Email-Cloud

Ha Visual Studio-t használ, akkor a csomag a Package Manager Console segítségével is telepíthető. Kérjük, hajtsa végre a következő parancsot:

PM> Install-Package Aspose.Email-Cloud
email to mht

Image 1:- Aspose.Words NuGet package installed.

NuGet Package Manager – Visual Studio

Egy másik legegyszerűbb megoldás az SDK telepítése a NuGet Package Manager segítségével a Visual Studio IDE-n belül.

  1. Nyissa meg a Megoldásböngészőt.
  2. Bontsa ki a projektet, és kattintson a jobb gombbal a Csomagok mappára a megoldásban.
  3. Válassza a NuGet-csomagok kezelése… lehetőséget
  4. Kattintson a Tallózás fülre, és keresse az „Aspose.Email-Cloud” kifejezést
  5. Kattintson az Aspose.Email-Cloud csomagra, válassza ki a megfelelő verziót a jobb oldali lapon, majd kattintson a Csomag hozzáadása gombra
email to mht

Image 2:- Aspose.Words Package in NuGet Package Manager.

Felhő-fiók előfizetés

API-jaink csak arra jogosult személyek számára férhetnek hozzá, mivel a felhőalapú tárhelyen tárolt adatok a felhő API-kon keresztül érhetők el. Az előfizetés ingyenes, és nincs szükség előzetes fizetési adatokra. Végezzen akár 150 ingyenes dokumentumfeldolgozási műveletet. Ha tehát elégedett az API képességeivel, fontolóra veheti a licenc-előfizetés választását, amely akár 0,005 USD/API hívás is lehet. További részletekért látogasson el a Pricing oldalra.

Most folytassa a fiók létrehozását az Aspose.Cloud dashboard oldalon. Nincs szükség hitelkártya vagy egyéb fizetési adatok megadására. Ha rendelkezik GitHub- vagy Google-fiókkal, egyszerűen regisztráljon, vagy kattintson az új fiók létrehozása gombra, és adja meg a szükséges információkat. Most jelentkezzen be az irányítópultra a hitelesítési adatokkal, és bontsa ki az Alkalmazások részt az irányítópulton, és görgessen lefelé az Ügyfél hitelesítő adatai szakasz felé, hogy megtekinthesse az ügyfél-azonosítót és az ügyféltitkot.

Ügyfél hitelesítő adatai

  1. kép: - Ügyfél hitelesítő adatai az Aspose.Cloud irányítópultján.

EML-ből MHT-be C#-ban

Kövesse az alábbi lépéseket az EML fájl MHT formátumba konvertálásához C# .NET használatával.

  • Az első lépés az EmailCloud osztály objektumának létrehozása a ClientID és a Client Secret adatok argumentumként történő átadásával
  • Másodszor olvassa be a forrás e-mail fájlt a File.OpenRead példányba
  • Harmadszor, hozzon létre egy EmailConvertRequest példányt, miközben átadja a bemeneti fájlformátumot, az eredmény fájlformátumot és a bemeneti EML-fájlt tartalmazó adatfolyam objektumot
  • Most hívja meg az Email.Convert(…) metódust az átalakítási művelet elindításához
  • Végül hívja meg az egyéni metódust az eredményül kapott fájl helyi meghajtóra mentéséhez a File.Create példány használatával
// A teljes példákért és adatfájlokért látogasson el ide 
https://github.com/aspose-email-cloud/aspose-email-cloud-dotnet

// Szerezze be az ügyfél hitelesítő adatait a https://dashboard.aspose.cloud/ webhelyről
string clientSecret = "d757548a9f2558c39c2feebdf85b4c44";
string clientID = "4db2f826-bf9c-42e7-8b2a-8cbca2d15553";

// hozzon létre egy EmailCloud Api példányt
var emailApi = new EmailCloud(clientSecret, clientID);
       
// forrás EML fájlnév
string name = "sample.eml";
// az eredményül kapott MHT-fájl neve
string resultantFile = "converted.mht";
// bemeneti e-mail fájl formátuma
string fromFormat = "eml";
// az eredményül kapott fájl formátuma
string toFormat = "Mhtml";

 try
{
    // olvassa be a sourec EML-t a stream objektumhoz
    using (var file = System.IO.File.OpenRead(@"C:\Users\shahbnay\Downloads\" + name))
    {
    
        // hozzon létre EmailConvert kéréspéldányt, amely bemeneti, kimeneti formátumokat és fájlfolyamot továbbít
        var convertRequest = new EmailConvertRequest(fromFormat, toFormat, file);
        
        // Hajtsa végre az átalakítási műveletet
        var response = emailApi.Email.Convert(convertRequest);

        // sikeres átalakítás esetén nyomtasson sikeres üzenetet
        if (response != null && response.Equals("OK"))
        {
            // nyomtassa ki a sikerüzenetet
            Console.WriteLine("Successfully converted EML to MHT !");
            Console.ReadKey();
        }
        
        // mentse az eredményül kapott fájlfolyamot a helyi meghajtóra
        saveToDisk(response, @"C:\Users\shahbnay\Downloads\" + resultantFile);
    }
}catch (Exception ex)
{
    // nyomtassa ki a kivételt a konzolon
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}

// egyéni módszer a kimenet rendszermeghajtóra való mentéséhez
static void saveToDisk(Stream responseStream, String resultantFile)
{
    var fileStream = File.Create(resultantFile);
    responseStream.Seek(0, SeekOrigin.Begin);
    responseStream.CopyTo(fileStream);
    fileStream.Close();
}
EML-MHT előnézet

  1. kép: - EML-MHT konverziós előnézet.

A fenti példában használt fájlok letölthetők a sample.eml és a converted.mht oldalról.

EML konvertálása MHT-vé a cURL használatával

Mivel az Aspose.Email Cloud REST architektúra szerint lett kifejlesztve, így könnyen elérhető a cURL parancsokkal. Az API-k eléréséhez használja a terminálalkalmazást/parancssort. Tehát az első lépés egy JWT hozzáférési jogkivonat létrehozása az Aspose.Cloud dashboard alatt megadott kliens hitelesítési adatok alapján. Kérjük, hajtsa végre a következő parancsot a JWT token generálásához.

curl -v "https://api.aspose.cloud/connect/token" \
 -X POST \
 -d "grant_type=client_credentials&client_id=4db2f826-bf9c-42e7-8b2a-8cbca2d15553&client_secret=d757548a9f2558c39c2feebdf85b4c44" \
 -H "Content-Type: application/x-www-form-urlencoded" \
 -H "Accept: application/json"

Most megvitatjuk a cURL parancs használatával a felhőtárhelyen már elérhető .eml fájlokat MHTML formátumba konvertálásához. A kimenetet a rendszer a -o paraméterrel menti el.

curl -X GET "https://api.aspose.cloud/v4.0/email/as-file?fileName=sample.eml&format=Mhtml" \
-H  "accept: multipart/form-data" \
-H  "authorization: Bearer <JWT Token>" \
-o resultant.mht

Abban az esetben, ha a helyi meghajtóról feltöltendő .eml fájl konvertálását kell végrehajtania, próbálja meg a következő cURL parancsot használni:

curl -X PUT "https://api.aspose.cloud/v4.0/email/convert?fromFormat=Eml&toFormat=Mhtml" \
-H  "accept: multipart/form-data" \
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: multipart/form-data" \
-d @sample.eml \
-o converted.mht

Következtetés

Ebben a cikkben az Aspose.Email Cloud szolgáltatásait emeltük ki a népszerű e-mail formátumok feldolgozásához. Az API lehetővé teszi e-mail-manipuláló alkalmazások létrehozását az e-mail üzenetekre piros zászlók elhelyezésére, e-mail mellékletek alkalmazására, e-mail mellékletek letöltésére és még sok másra. Megbeszéltük az EML-fájlok MHT-vé alakításának lépéseit C# .NET és a cURL parancsok használatával. Ezenkívül a .NET Cloud SDK-t az MIT-licenc szerint fejlesztették ki. Töltse le és szabja testre őket teljesen ingyenesen. A teljes forráskód a GitHub oldalon érhető el.

A felhő API-król egy swagger view-t is biztosítottunk, így az API-kat webböngészőn belül tesztelheti. Továbbá, ha bármilyen problémába ütközik, vagy további kérdései vannak, forduljon hozzánk bizalommal az ingyenes ügyfélszolgálati fórumon.

Kapcsolódó cikkek

Javasoljuk továbbá, hogy látogassa meg az alábbi linkeket, ha többet szeretne megtudni erről: