There is a maximum length for the text in the &body section of a mailto: link. According to one of my co-workers, the W3C publish the limit as 256 (I don't have a link to back this up, though).
We're embedding mailto: links in both an e-mail and a webpage and have successfully used more than 256 characters. After a certain point, though, e-mail clients and browsers start flaking out and refusing to open the link.
I would like to know the actual maximum lengths allowed for the following:
Mail clients:
Browsers:
Any and all numbers you can provide will be gratefully received.
The standard doesn't define a maximum length, leaving implementation up to browsers and mail clients (See IETF RFC 2368).
Microsoft products do have set limits:
Other browsers are likely to work up to lengths beyond that of a reasonable email body. The iPhone doesn't have a documented limit, but works with up to 1MB of text.
Modern browsers that support data urls (everything except IE<9) should be fine.
For browsers with JS consoles, an easy test:
for (var i=2014; i>1600; i--) {var good=1; try {location.href='mailto:?body='+'a'.repeat(i)} catch (e) {good=0;} if (good==1) {console.log(i+13);break;}}
(The 13 is for the length of mailto:?body=
.)
On Firefox 32.0.3 this produces 2008 (body length 1995). On Thunderbird 31.2.0, all 1,995 characters make it into the body of the new e-mail.
Some say it's mainly OS-setting-dependent but on Windows, at least, I couldn't find any registry entry related to mailto
with a number near 2,000.
I just did an experiment from Wolfram Mathematica to Microsoft Outlook. It works for string lengths of 31888 or less. This is the code I used for this experiment:
Table[ToString@RandomInteger[{0, 9}], 31433] //
Partition[#, UpTo[80]] & //
Map[StringJoin] //
StringRiffle[#, "\n"] & //
"mailto:[email protected]?subject=Testing out mailto!&body="<> # & //
Echo[#, "Total String Length", StringLength] & //
SystemOpen
and prints 31888 as the total string length. If you increase the 31433 by one, it stops working.
As of 2022 it seems outlook (2007 anyway) accepts long query_string of at least 8000 characters using mailto in Firefox. However using Google Chrome browser, Chrome failed right around 2000. Lowest common denominator seems to be Chrome. Too bad since this has been a request for over a decade.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With