Эффективная максимальная длина письма: длина тела

Максимальная длина текста в разделе "amp; body" ссылки mailto:. По словам одного из моих сотрудников, W3C публикует предел как 256 (у меня нет ссылки на это, хотя).

Мы вставляем mailto: ссылки как на электронную почту, так и на веб-страницу и успешно использовали более 256 символов. Однако после некоторого момента клиенты электронной почты и браузеры начинают выскакивать и отказываться открывать ссылку.

Я хотел бы знать, какие максимальные длины разрешены для следующего:

Почтовые клиенты:

  • Outlook (2003, 2007, 2010)
  • Eudora (7.1 и/или любая другая версия)
  • Thunderbird (последняя версия)

Браузеры:

  • Firefox (3 +)
  • IE (6, 7, 8)
  • браузер iPhone

Любые и все номера, которые вы можете предоставить, будут с благодарностью получены.

Ответ 1

Стандарт не определяет максимальную длину, оставляя реализацию до браузеров и почтовых клиентов (см. IETF RFC 2368).

У продуктов Microsoft установлены ограничения:

Другие браузеры, вероятно, будут работать дольше, чем у разумного тела электронной почты. IPhone не имеет документального ограничения, но работает с 1 МБ текста.

Современные браузеры, поддерживающие URL-адреса данных (все, кроме IE и 9), должны быть в порядке.

Ответ 2

Для браузеров с консолями JS легкий тест:

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;}}

(13 - длина mailto:?body=.)

В Firefox 32.0.3 это создает 2008 (длина тела 1995). На Thunderbird 31.2.0 все 1,995 символа превращают его в тело нового сообщения электронной почты.

Некоторые говорят, что это в основном зависит от ОС, но в Windows, по крайней мере, я не смог найти запись в реестре, связанную с mailto с числом около 2000.