Hej, jag försöker att undvika att publisera e-mailadresser på websidor för att inte mailadresssökande robotar ska hitta dessa och sedan bomba mig med spam.
Min teori är att lösningen nedan är relativt säker då adressen skapas på klientsidan.
Tänker jag rätt eller spelar det inte någon större roll ?
Jag kan inte alls se varför detta skulle vara säkert. Tänk på vad webbrowsern ser. Det lär ju bli den kompletta mail-adressen. Därmed kan adressen samlas in av en robot.
Nu är jag inte med. Hur ser webbrowsern den kompletta mail adressen. En robot letar antagligen efter.
Mailto: taggen och läser source ur denna. I mitt fall returneras: +varSendTo +"@" +varDomain +"'
Letar efter @ tecken. Blir nog svårt att skriva ett skript som gör en emailadress från en fragmenterad adress???
Om jag förstår det rätt så är det först när någon har klickat på länken som den riktiga e-mailadressen existerar. Det bör väl vara betydligt bättre än att skriva adressen i klartext ?
Jo bilden är nog bra. Men man får dra en linje mellan användarvänlighet / risk. Är det någon som har upplevt javascript varianten som osäker?
Sökte nyss på "safe mailto" och majoriteten (som inte vill köra bilversionen) väljer att köra någon liknande javascript variant. Jag håller mig till den om inte någon annan har ett bättre förslag.
Det måste väl var x% mycket bättre att köra javascript varianten än att skriva ut adressen i klartext med en html mailTo tag?!
Nu är jag inte med. Hur ser webbrowsern den kompletta mail adressen. En robot letar antagligen efter.
Mailto: taggen och läser source ur denna. I mitt fall returneras: +varSendTo +"@" +varDomain +"'
Letar efter @ tecken. Blir nog svårt att skriva ett skript som gör en emailadress från en fragmenterad adress???
Om jag förstår det rätt så är det först när någon har klickat på länken som den riktiga e-mailadressen existerar. Det bör väl vara betydligt bättre än att skriva adressen i klartext ?
Eller är jag ute och cyklar moutainbike ? :)
Nu är jag egentligen inte webbutvecklare själv, så jag kan ha fel om detaljerna. Jag tänker på följande vis: Vad har du mailto-länken till? Måste det inte vara en komplett mail-adress för att mailto-länken ska fungera? Din javascriptsfunktion med "document.write", vad skriver document.write till för något? Är det något som webläsaren kan se? Om inte, vad används då document.write till? Om document.write faktiskt skriver till den textström som du skickar till webläsaren, då blir det ju precis som om du hade skrivit hela adressen direkt på websidan.
Tack ulf. Det är mycket möjligt att en robot inte alls gör som jag trott, dvs läser av sourcekoden. Det är det jag försöker få svar på :)
Det jag funderar över är att "textströmen" inte innehåller den kompletta mailto datat i huvudtaget innan någon har klickat på länken. Javascript exekveras/kompileras på klienten så det skickas aldrig från servern till klienten på det sättet.
Hejja Ulf. Bevisa att jag tänker fel. :)
Vi kan väl omformulera frågan lite. Är det säkrare att köra javascript varianten än inte? Då är kanske svaret inte så relativt.
Utan att egentligen veta, men banne mig måste ditt script vara bra mycket bättre än ren klartext. Kan inte tänka mig att så värst många robotar klarar av, eller om man säger som så, ger sig på liknande script.
Kul att se att exemplet som GunnarD hänvisar till såg någorlunda lika ut som mitt. Jag som alltid har ansett mig vara novis inom området. Ha ha...
Jag funderade faktiskt på att ta bort exekveringen ur <a href=""... och ersätta det med onClick event på något annat. Det kan nog vara lite bättre men nu nöjer jag mig med ovan.
Jag håller nog med Solbulle. Det låter komplicerat att skapa en robot som är effektiv på dessa länkar. Men det skulle inte förvåna mig om det är någon som har försökt.
Re: Anses detta vara ett säkert sätt att skapa mailto länkar på?
För att en spambot skall kunna hitta en javascript email länk måste spamboten köra allt javascript på en sida, precis som en vanlig webbläsare. Det kommer de säkert att klara förr eller senare, även om det kräver mycket större datorkraft att göra det på miljontals sidor jämfört med att bara leta efter "mailto" textsträngar i källkoden.
Hittills har jag haft god erfarenhet av den här varianten:
<script type="text/javascript">
var foo = "xailto:";
var bar = "namnydomainvse";
foo = foo.replace("x","m");
bar = bar.replace("y","@").replace("v",".");
document.write('<a href="' + foo + bar + '">' + bar + '<\/a>');
</script>
<noscript>
Här kan man ha en bild med email adressen på, en länk till ett email formulär, en förklarande text, etc.
</noscript>
Men tänk på att spammare numera kan hitta en adress på fler sätt än att bara söka av hemsidor. En del trojaner söker tex av infekterade datorer där din email adress kan vara sparad. Har någon en gång skickat eller mottagit email från dig kanske din adress redan kommit ut. Jag vet tyvärr inget sätt att skydda sig mot det...