mailto ссылки в Gmail - PullRequest
       23

mailto ссылки в Gmail

17 голосов
/ 17 января 2011

Я столкнулся с проблемой веб-приложения Gmail. По какой-то причине ссылки mailto не работают, когда я пытаюсь добавить тело в ссылку. Ссылки работают нормально, пока не используется разделитель & для тела.

Например:

href="mailto:?subject=test&body=this is a test" - не работает

href="mailto:?subject=testbody=this is a test" - Работает, но, очевидно, не дает желаемого результата, поскольку все идет к предмету.

Я использую Vista 64bit, и я пробовал FF, Chrome и IE. Кроме того, я заметил разницу между тем, как Gmail отображает мою почту в моей учетной записи Gmail и в Google Apps.

Когда я просматриваю одно и то же электронное письмо на моем iPhone и Outlook, кажется, что все работает нормально.

Любая помощь будет оценена.

Ответы [ 8 ]

10 голосов
/ 02 августа 2013

Полный синтаксис mailto Link для кросс-браузера

<a href="mailto:info@example.com?subject=subject&cc=cc@example.com">mail link</a>

Вот переменные, которые вы можете использовать в ссылках mailto:

mailto: для установки получателя или получателей, разделенных запятой

&cc= для установки получателя (ей) CC

&bcc= для установки получателя (ей) BCC

&subject=, чтобы задать тему сообщения, кодировать URL для более длинных предложений, поэтому замените пробелы на% 20 и т. Д.

&body=, чтобы задать текст сообщения, вы можете добавить здесь целые предложения, включая разрывы строк. Разрывы строк должны быть преобразованы в% 0A.

Некоторые примеры ссылок mailto

<a href="mailto:email-to@gmail.com?cc=email-cc@gmail.com&bcc=email-bcc@gmail.com&subject=Subject Using Mailto.co.uk&body=Email Using Body">Email-Link</a>

Несколько получателей:

<a href="mailto:first@email.address,second@email.address,third@email.address">Contact Us</a> 

Ссылка онлайн-поколения : http://www.mailto.co.uk/

3 голосов
/ 12 июня 2015

Я могу получить все для заполнения на интерфейсе Gmail, используя их полный URL-адрес:

https://mail.google.com/mail/u/0/?view=cm&fs=1&tf=1&to=target@email.com&subject=MISSED%20CALL%20EZTRADER&body=Hello%2C%0A%0AI%20tried%20contacting%20you%20today%20but%20you%20seem%20to%20have%20missed%20my%20call.%20%0A%0APlease%20return%20my%20call%20as%20soon%20as%20you%E2%80%99re%20available.%20%0A%0AIn%20any%20case%2C%20I%20will%20try%20ringing%20you%20at%20a%20later%20time.%0A%0A%0ATy%2C%0A%0A%0A%0A

Но я все еще не могу заполнить строку темы.Я все еще выясняю, есть ли у кого-нибудь ответ или он знает ссылку на кодировку gmail в URL для него?

1 голос
/ 30 мая 2013

Рассмотрите возможность замены пробелов на% 20. Кроме того, в чем проблема форматирования? Или лучше бы прояснить все. Вы сказали, что «ссылки mailto не работают» и «Gmail отображает мою почту в моей учетной записи Gmail и Google Apps». Это отправляет или нет, и если это отправляет обоим, в чем конкретно разница.

1 голос
/ 30 мая 2013
try this
<a href="mailto:email@echoecho.com?subject=SweetWords&body=Please send me a copy of your new program!">Email Me</a>
1 голос
/ 22 мая 2013

Как вы можете видеть в RFC 2368 , это вообще невозможно:

Специальное hname "body" указывает, что ассоциированное hvalue является телом сообщения. Hname «body» должно содержать содержимое первой текстовой / простой части тела сообщения. URL mailto в первую очередь предназначен для генерации коротких текстовых сообщений, которые на самом деле являются содержимым автоматической обработки (например, сообщения «подписка» для списков рассылки), а не общими телами MIME.

1 голос
/ 12 марта 2013

Проверено в Firefox 19 - работает.
В Chrome вам нужно установить расширение, чтобы оно заработало.

Страница, которую я тестировал - https://dl.dropbox.com/u/60854445/mail.html
Расширение Chrome - https://chrome.google.com/webstore/detail/mailto-for-gmail/dgkkmcknielgdhebimdnfahpipajcpjn/

Может быть, они это исправили.

1 голос
/ 25 ноября 2011

чувак, даже если я не кодировал '&', я заменяю следующие символы, а затем передаю тело письма и подчиняюсь mailto, это действительно работает для меня. Надеюсь, что это может принести вам некоторые идеи.

body = body.replaceAll("\\\\", "%5C");
body = body.replaceAll(" ", "%20");
body = body.replaceAll("\r", "%0D");
body = body.replaceAll("\n", "%0A");
body = body.replaceAll("\t", "%09");
1 голос
/ 17 января 2011

Попробуйте href="mailto:?subject=test&body=this+is+a+test"

...