Как создать отказоустойчивые почтовые URL

Правильное кодирование адресов mailto немного громоздко. Это особенно верно, когда вам нужно включить тему, сообщение по умолчанию или другие элементы. Вместо простых слов необходимо использовать шестнадцатеричные коды, которые представляют собой символы ASCII, закодированные в соответствии со стандартом RFC 1738 — унифицированными указателями ресурсов (URL). Вам не нужно запоминать или создавать эти шестнадцатеричные представления на макушке, хотя: JavaScript может сделать это за вас.

Контент, который мы описываем ниже, использует JavaScript, который имеет более высокий технический компонент, чем другие решения. Мы рекомендуем создавать обычные ссылки mailto, чтобы получить эти ссылки самым простым способом.

Функция JavaScript encodeURIComponent ()

JavaScript encodeURIComponent () Функция кодирует любую строку, переданную в качестве аргумента, и возвращает ее для использования. Например,

encodeURIComponent («Док, танцуй!»)

производит

Doc% 2C% 20do% 20DA% 20Dance!

Если вы сделаете эту криптографию вручную, скорее всего, вы сделаете ошибку — но JavaScript не сделает. Чтобы использовать encodeURIComponent () для упрощения композиции URL-адресов mailto: просто замените любое вхождение строки в URL-функцией на функцию encodeURIComponent (), которая видит нашу строку в качестве аргумента.

Например, скажем, вы хотите создать mailto: URL, который инициирует сообщение на receient@example.com с темой «Когда, когда сейчас? (Если« сейчас »здесь»). URL будет выглядеть так:

почты:? recipient@example.com Заголовок =

Предметом является строка «Когда, когда сейчас? (Если« сейчас »здесь)». Строка в качестве аргумента для encodeURIComponent () делает следующее:

encodeURIComponent ("Когда, когда сейчас? (если \" сейчас \ "здесь)")

Результат этого вызова функции:

Когда% 2C% 20when% 20is% 20now% 3F% 20 (если% 20% 22now% 22% 20is% 20here)

Использование e ncodeURIComponent () с URL-адресами Mailto:

Использовать encodeURIComponent () в URL-адресе mailto составьте всю ссылку (из «

Например:


+ "\"> напиши мне! ")

Ссылка на основную публикацию