Generar una adreça Gmail mitjançant .NET
Creeu el vostre propi generador temporal de Gmail amb contrasenya utilitzant C#
Descarrega la prova gratuïtaEl generador de Gmail és una manera força comuna de gestionar subscripcions de correu electrònic. En essència, és una analogia d’un proveïdor d’adreces de correu temporals, però molt més flexible, fiable i segur.
L’essència del generador és crear adreces Gmail addicionals. Pots utilitzar aquestes adreces addicionals en registrar-te a diversos webs. Aquests llocs probablement enviaran correus a les adreces que proporciones. Com que les adreces són addicionals, totes les cartes arribaran a la teva adreça principal. Però alhora, una adreça addicional generada per l’aplicació o preparada manualment apareixerà com a destinatari del correu.
Cercar correus electrònics per l’adreça del destinatari et permetrà filtrar correus i realitzar accions automàtiques sobre ells. Una vegada o de forma permanent. També pots detectar llocs web que comparteixen la teva adreça amb tercers sense el teu consentiment.
Per exemple, suposem que has generat una adreça addicional username+for.spam.sender@gmail.com . L’has introduït al lloc web spam-sender.com. Després d’un temps, pots rebre un correu d’un altre lloc, com ara other-sender.com, però el destinatari serà username+for.spam.sender@gmail.com . En qualsevol altra situació, no podries descobrir per què other-sender.com t’està enviant correus promocionals, però com has utilitzat una adreça alternativa, és fàcil veure que spam-sender.com ha compartit la teva adreça amb tercers. I si és així, no té sentit donar-te de baixa de les llistes de correu d’aquests llocs. La teva adreça addicional probablement ja ha estat inclosa en alguna base pública per enviar correus no desitjats. Serà molt més fàcil si simplement bloqueges tot el correu que arribi a aquesta adreça addicional. Seria encara millor si configuressis l’acció automàtica de moure aquests correus a la carpeta de spam. Aquesta configuració dificultarà molt la vida d’aquests llocs perquè Gmail sabrà que aquests llocs estan enviant spam.
Així que descobrim com implementar aquest generador utilitzant Aspose.Email per a .NET.
Genera Gmail temporal i opera amb ell
Per generar una adreça Gmail addicional, realment no necessitem Aspose.Email, ni hem d’interactuar amb el servei Gmail de cap manera. Qualsevol adreça addicional que inventis manualment o aleatòriament, subjecta a certes regles, funcionarà.
Llavors, quines són aquestes regles?
Els punts no són importants. És a dir, a la teva adreça, abans del símbol ‘@’, pots tant eliminar punts com afegir-ne de nous entre qualsevol parella de lletres.
Abans del caràcter ‘@’, pots afegir un caràcter ‘+’ amb qualsevol conjunt de lletres i números després d’ell. Exemples per a l’adreça «username@gmail.com»:
Totes aquestes adreces ja es poden utilitzar en registrar-se a llocs web. Però per si soles tenen poc sentit, ja que tots els missatges que arribin a aquestes adreces acabaran a la teva bústia principal. Per tant, val la pena seguir les nostres instruccions per treballar amb aquestes adreces.
Generador simple de Gmail temporal
Així que crearem un generador senzill d’adreces subaleatòries. Per fer-ho, afegirem una cadena aleatòria entre els caràcters ‘+’ i ‘@’. En primer lloc, hem de generar una cadena aleatòria d’una certa longitud, composta per un conjunt determinat de caràcters:
const string pattern = "abcdefghijklmnopqrstuvwxyz0123456789";
var patternLength = pattern.Length;
const int suffixLength = 10;
var random = new Random();
var generatedSuffix = Enumerable.Range(0, suffixLength)
.Aggregate(
new StringBuilder(),
(builder, _) => builder.Append(pattern[random.Next(patternLength)]))
.ToString();
Ara necessitem obtenir l’adreça de correu electrònic i afegir-hi la cadena aleatòria generada. Per fer-ho, utilitzarem la classe <a href="https://reference.aspose.com/email/net/aspose.email/mailaddress/" rel="nofollow noopener" target="_blank">MailAdress de la biblioteca Aspose.Email per a .NET:
var originalAddress = new MailAddress("some.address@gmail.com");
var generatedAddress = new MailAddress(
$"{originalAddress.User}+{generatedSuffix}@{originalAddress.Host}");
Console.WriteLine(generatedAddress);
Fet! L’adreça rebuda ja es pot utilitzar en registrar‑se a llocs web. Els webs començaran aviat a enviar missatges a aquesta adreça. Veiem què podem fer amb aquests missatges.
Utilitza el client IMAP per operar amb els missatges rebuts al Gmail generat
Primer, per operar amb els missatges rebuts a una adreça addicional, hem de connectar-nos a Gmail. IMAP és adequat per a això. Per connectar‑te mitjançant aquest protocol, no oblidis configurar el teu compte perquè permeti la connexió amb aquest protocol. També pots simplificar la connexió IMAP amb una contrasenya d’aplicació dedicada. Això et permetrà evitar la necessitat de fer autorització OAuth si no vols implementar‑la a la teva aplicació. Simplement ves a la configuració del teu compte Google, obre la secció Seguretat i afegeix una contrasenya d’aplicació. No oblidis desar la contrasenya generada en un emmagatzematge segur i intenta no perdre‑la, ja que et dóna accés complet al teu correu!
Així que utilitzem la classe <a rel="nofollow noopener" target="_blank" href="https://reference.aspose.com/email/net/aspose.email.clients.imap/imapclient/">ImapClient i connecteu el vostre compte Gmail mitjançant el protocol IMAP:
var imapClient = new ImapClient("imap.gmail.com", 993, originalAddress.User, "password",
SecurityOptions.SSLAuto);
Fet, ara podem, per exemple, obtenir tots els missatges rebuts a l’adreça Gmail generada:
await imapClient.SelectFolderAsync("INBOX");
var queryBuilder = new ImapQueryBuilder();
queryBuilder.To.Contains(generatedAddress.Address);
var list = await imapClient.ListMessagesAsync(queryBuilder.GetQuery());
I rebràs absolutament totes aquestes cartes. No importa de quin lloc provenen. Podrien haver arribat del lloc al qual vas proporcionar l’adreça de correu generada. Podrien haver arribat d’un altre lloc. De qualsevol adreça. Filtrarem els correus no per remitent, sinó per destinatari. I és molt còmode.
Marca, elimina, mou els missatges rebuts al Gmail temporal
Un cop rebuda la llista de cartes, ja podem realitzar diverses operacions sobre ella. Principalment totes alhora. No has de buscar-les a la teva bústia una per una. Literalment, un parell d’ordres i totes les cartes es marquen com a llegides, es mouen a una altra carpeta o simplement s’esborren. Només no oblidis comprovar prèviament que la llista de cartes no sigui buida. Pot ser que ja hagis esborrat tot.
if (list.Count > 0)
{
//Mark as read
await imapClient.AddMessageFlagsAsync(list, ImapMessageFlags.IsRead);
//Move
await imapClient.MoveMessagesAsync(list, "DestinationFolder");
//Remove
await imapClient.DeleteMessagesAsync(list, commitNow: true);
}
Fet, la teva safata d’entrada s’ha netejat de correu brossa.
Subscriure’s a una adreça Gmail temporal
Què passa si no voleu eliminar o marcar constantment els correus manualment amb el codi anterior? I si voleu eliminar els correus tan bon cop es reben? Per fer-ho, per exemple, podeu subscriure-us a nous missatges i escriure una funció que elimini els missatges en el moment en què arriben a la vostra adreça de correu.
await imapClient.StartMonitoringAsync((_, eventArgs) =>
{
var generated = eventArgs.NewMessages
.Where(message => message.To
.Any(address => address.Equals(generatedAddress)))
.ToList();
if (generated.Count == 0) return;
imapClient.SelectFolder("INBOX");
//Do something with the received messages. For example, mark them as read:
imapClient.AddMessageFlags(generated, ImapMessageFlags.IsRead);
//or delete them
imapClient.DeleteMessages(generated, commitNow: true);
},
(_, errorEventArgs) => Console.WriteLine(errorEventArgs.Error.Message),
"INBOX");
Aquest algoritme està lleugerament simplificat perquè, en cas d’error, la subscripció a nous missatges s’interromprà. Podeu millorar significativament l’algoritme. Per això, cal refinar-lo millorant la gestió d’errors. Per exemple, podeu configurar la reanudació del monitoratge en cas d’error; per a això, podeu utilitzar la funció ImapClient.ResumeMonitoring. Aquesta funció restablirà una connexió amb el servidor IMAP i reprendrà el monitoratge de nous missatges.
Desgraciadament, per utilitzar aquest algoritme cal mantenir el programa en execució constantment. Tan bon punt interrompeu l’execució del programa, les noves cartes ja no s’eliminaran automàticament. Però en aquest cas hi ha una altra solució.
Deixa de rebre missatges a l'adreça Gmail generada
Gmail proporciona algoritmes per filtrar els missatges entrants. Aquests algoritmes funcionen al costat del servei i mai deixaran passar correu no desitjat, si, per descomptat, els configureu correctament. De moment, desgraciadament, no podem oferir-vos la funcionalitat per configurar remotament aquests filtres mitjançant C#, però preveiem afegir aquesta oportunitat en un futur pròxim. Si us plau, seguiu les nostres actualitzacions!
Així que, si vols filtrar els missatges que arriben al Gmail generat, primer has de crear una plantilla de cerca per al filtre. Aquí tens el codi més simple per obtenir la plantilla:
//Generate Gmail search pattern
var searchPattern = $"to:({generatedAddress.Address})";
Console.WriteLine(searchPattern);
Aquí, la variable generatedAddress conté el Gmail generat que es va crear anteriorment en aquest article. El codi anterior crearà una plantilla de cerca i la imprimirà al terminal. Copieu aquesta plantilla perquè la necessitareu en crear el filtre.
Ara descriurem pas a pas com podeu crear un filtre. Per començar, obriu la interfície web de Gmail, disponible a <a href="https://mail.google.com/mail" rel="nofollow noopener" target="_blank">l’enllaç. En aquesta interfície, trobeu la barra de cerca:

En aquesta barra de cerca, heu d’inserir la plantilla generada anteriorment en aquesta instrucció. A continuació, heu de fer clic al botó “Show search options”, que s’indica a la captura de pantalla següent:

A la finestra d’opcions de cerca que s’obre, no cal introduir cap dada addicional, la plantilla generada ja ha configurat la cerca. Només cal fer clic al botó "Create filter".

Com a resultat, s’obrirà la finestra de configuració del filtre:

Aquí pots triar què ha de fer el filtre amb els correus rebuts a l’adreça Gmail generada. Pots arxivar‑los automàticament, marcar‑los com a llegits, esborrar‑los, etc. Normalment, l’opció més recomanada és esborrar els correus. El volum de la bústia és limitat, no té sentit ocupar-lo amb correu brossa. Un cop seleccionades les accions que et convinguin, fes clic de nou al botó “Crear filtre”.
Fet! El filtre està totalment configurat, així que ja no t’enmolsarà el correu brossa.
Gestiona filtres temporals de Gmail
A vegades els missatges que rebeu d’un lloc web concret es converteixen en no sol·licitats. Es converteixen en escombraries a la vostra safata d’entrada i us impedeixen trobar allò que realment és important i interessant per a vosaltres. Com a resultat, creeu un filtre que bloqueja els missatges no desitjats d’aquest lloc web. Però què passa si els missatges del lloc ja no són brossa? Per exemple, voleu recuperar la vostra contrasenya. Un lloc web us envia un correu amb un enllaç a un formulari de restabliment de contrasenya, però no el rebeu perquè el filtre elimina immediatament el correu.
Afortunadament, hi ha una solució elegant per a aquesta situació. Podeu reconfigurar temporalment el filtre perquè no elimini aquests correus. O bé podeu eliminar completament el filtre. Vegem com es pot fer.
Primer, obriu la interfície web de Gmail. A la pàgina que s’obre, feu clic al botó "Settings":

A la finestra que s’obre, feu clic al botó "See all settings":

S’obrirà la finestra de configuració del compte de Gmail. Conté moltes pestanyes per ajustar la vostra experiència de correu electrònic. Ens interessa la pestanya "Filters and Blocked Addresses". Obriu aquesta pestanya:

A la pestanya que s’obre, veureu una llista de filtres per als Gmails generats que hàgiu creat anteriorment, així com possiblement altres filtres:

A partir de la descripció dels filtres, podeu determinar fàcilment quin és responsable de l’adreça que voleu desbloquejar. En fer clic al botó "delete", podeu desactivar permanentment el filtre. Si feu clic al botó “edit”, podeu reconfigurar el filtre. Per exemple, en lloc d’eliminar correus, podeu marcar-los. D’aquesta manera podeu desar el filtre i facilitar-ne l’activació en el futur. En editar el filtre, podreu rebre els correus necessaris del lloc web. Quan vulgueu tornar a blocar el Gmail generat, obriu de nou el filtre amb el botó “edit” i reconfigureu les accions.
Això és tot. Ara sou un professional amb adreces Gmail generades. Podeu crear una gran quantitat d’adreces i gestionar magistralment el flux de correus electrònics que arriben al vostre Gmail. Utilitzant adreces addicionals, podreu rastrejar els llocs que transfereixen les vostres dades a tercers sense el vostre consentiment. Podreu blocar el correu brossa sense haver de tornar a entrenar el vostre sistema antiespams o sense haver de prémer els botons de Cancel·lar subscripció diverses vegades. Podeu automatitzar la supressió de correu brossa mitjançant Aspose.Email .NET o manualment a través de la configuració i la interfície de Gmail.