2009-10-06 11 views
10

La mia applicazione Web invia e-mail agli utenti. L'email contiene un link per ulteriori azioni dell'utente. I nostri standard di sicurezza richiedono che il link nell'e-mail non possa essere cliccabile. Tuttavia, i client di posta elettronica riconoscono https: // nell'email e collegano automaticamente l'URL.Interrompi collegamento ipertestuale automatico in Outlook, Gmail, ecc.

Qualsiasi idea su come interrompere i client di posta elettronica per il collegamento automatico. Sto pensando se saltare il https: //, potrebbe interrompere il collegamento automatico. Ma, se devo mantenere il https: // c'è un modo per evitare il collegamento automatico.

Il collegamento nell'e-mail è costruito dinamicamente nel codice C#.

+3

Questo è uno standard di sicurezza davvero stupido. Il rischio di fare clic su un link nell'e-mail è esattamente lo stesso di copia-incolla un link da una e-mail a un browser. Questa è sicurezza attraverso l'inconveniente, che non è affatto la sicurezza. – abelenky

+2

@abelenky No. È possibile fare clic accidentalmente su un collegamento. Non è possibile copiare e incollare accidentalmente un collegamento da un messaggio di posta elettronica in un browser e premere Invio. – djechlin

risposta

1

Sostituisci il testo attuale con una piccola immagine GIF simile al testo.

I parser di e-mail non riconoscono il testo all'interno di un'immagine.

+1

+1, sebbene la maggior parte dei client di posta elettronica oggigiorno non consenta la visualizzazione di immagini all'interno di e-mail a meno che l'utente non le autorizzi espressamente. –

1

La mia applicazione ha un simile requisito di sicurezza. La soluzione che abbiamo usato è stata aggiungere un carattere di sottolineatura all'inizio dell'URL (_http: //).

1

Avvicinarsi alla domanda, lo so, ma è rilevante ... Mi piacerebbe presentare uno scenario ragionevole in cui il collegamento automatico di Gmail (almeno - non hanno testato altri client) non ha senso.

Un cliente ha un modulo di domanda sul proprio sito, dove i visitatori compilano alcune informazioni personali e le presentano. Il sistema invia quindi una e-mail di notifica al cliente, presentando le informazioni fornite dal visitatore.

Desidero migliorare l'e-mail inviata al client aggiungendo una textarea < nella parte inferiore, con i campi compilati dal visitatore presentati in formato CSV in modo che il client possa semplicemente copiare tutto e incollarlo in un foglio di calcolo.

Gmail, però, non riesce a riconoscere che gli URL e gli indirizzi email sono all'interno di un tag < textarea>, e "utilmente", aggiunge il < a href = "..."> ... </a> codice di collegamento intorno all'URL/email - all'interno dello nell'area di testo <>. Ciò si traduce nel codice di collegamento HTML non elaborato visualizzato nell'area di testo <>.

17

So che questo thread è vecchio, ma ho avuto questo problema e non mi ha entusiasmato per la correzione dell'immagine GIF. Se stai lavorando con e-mail HTML, una soluzione leggermente migliore è quella di suddividere il testo del link con un tag non rendering che inganna il parser. Io sono un fan di un semplice inesistente <z>:

 
    https<z>://securesite.</z>com 

Funziona anche in posti di Stack Overflow: https://securesite.com.

Spero che questo aiuti qualcuno.

4

Basta creare una pianura <span> tag in tutto il colon (<span>:</span>) o qualcosa del genere :)

1

Spiace ripescare una vecchia questione, ma ho solo cercato la risposta suggerita da pieman72, e ha scoperto che esso didn' t lavorare con Outlook 2007-2013.Tuttavia, avvolgendo i singoli elementi del URL all'interno di celle della tabella ha fatto ingannare il parser di Outlook:

Visit <table><tr><td>www.</td><td>website</td><td>.com</td></tr></table> for more information.

mi corse un messaggio campione attraverso la suite di test Email On Acid verificando che non sfuggiva il parser su tutte le principali e- client di posta che convertono automaticamente gli URL (Outlook, iOS, Android 2.2, ecc.) Non ho eseguito alcun test di recapito.

5

Anche io desidero disabilitare questo, poiché credo che questo sia un uso "valido" per non volere l'auto-collegamento (una ragione è che il progettista la vuole in questo modo, e attualmente stanno pagando le bollette).

In e-mail che non ci sono le immagini, l'intestazione ha il nome di dominio in esso: EXTRANET.EXAMPLE.COM

ho anche messo gli stili inline per assicurarsi che rimanga bianco su sfondo nero: <span style="font-size: 1.5em;padding: 0.5em 0;text-transform: uppercase; font-weight:bold;color:#FFFFFF;text-decoration:none;">EXTRANET.EXAMPLE.COM</span>

Gmail crea un collegamento, aggiunge una sottolineatura e la trasforma in blu chiaro anziché in bianco.

In un primo momento ho provato a sostituire i punti con &#46; che lo rendevano soddisfacente, ma non ingannare il parser di Gmail.

Così, ho aggiunto uno spazio con spanning che funzionano bene (vale a dire che gli sciocchi parser di Gmail):

<span style="font-size: 1.5em;padding: 0.5em 0;text-transform: uppercase; font-weight:bold;color:#FFFFFF;text-decoration:none;">EXTRANET<span style="font-size:0.1em">&nbsp;</span>.<span style="font-size:0.1em">&nbsp;</span>EXAMPLE<span style="font-size:0.1em">&nbsp;</span>.<span style="font-size:0.1em">&nbsp;</span>COM</span>

+0

Questo approccio (ponendo spazi ristretti e senza interruzione intorno alla punteggiatura) dovrebbe essere accettato come risposta "corretta". Funziona per Gmail e Mail.app. Ho messo "corretto" tra virgolette perché il comportamento di queste applicazioni client richiede un rivoltante hack. :-) – sheldonh

+0

concordato per @sheldonh, funziona come un fascino. – littlealien

0

@raugfer suggerisce in another answer: avvolgere l'e-mail/URL con un ancoraggio.

<a name="myname">[email protected]</a> 

Citando da quella risposta:

Dal momento che il testo è già avvolto in un collegamento ipertestuale, Gmail si arrende e lasciar perdere. :)

(Nota: anche lavorato per client di posta elettronica di Apple.)

0

Questo è quello che ho fatto: ""

  • Sostituire tutte le istanze di con <span style=""color:transparent; font-size:0px;"">[{</span>.<span style=""color:transparent; font-size:0px;"">}]</span>
  • Sostituire tutte le istanze di "@" con <span style=""color:transparent; font-size:0px;"">[{</span>@<span style=""color:transparent; font-size:0px;"">}]</span>

Questi personaggi fermati si parsing link e indirizzi e-mail, ma non sono visibili per l'utente. Il negativo è che quando si copia e incolla un messaggio di posta elettronica, ad esempio, si finisce con: "test1 {[{.}]} Dominio {[{.}]} Com"

.

Problemi correlati