Anda MUNGKIN mengkodekan +
, tetapi Anda tidak harus melakukannya.
Pertama, kita perlu setuju bahwa mailto
ini adalah contoh dari URI generik, yang ditentukan oleh RFC 2396 . (Inilah yang digunakan XHTML dan HTML 4).
Sekarang mari kita cari tahu daftar karakter yang dipesan di RFC 2396.
reserved = ";" | "/" | "?" | ":" | "@" | "&" | "=" | "+" |
"$" | ","
URI terbagi menjadi absolut dan relatif:
URI-reference = [ absoluteURI | relativeURI ] [ "#" fragment ]
Dan karena skema mailto:
ditentukan ini adalah URI absolut:
absoluteURI = scheme ":" ( hier_part | opaque_part )
Dan karena kedua pola untuk hier_part
memulai /
, mailto
adalah bagian buram.
opaque_part = uric_no_slash *uric
uric_no_slash = unreserved | escaped | ";" | "?" | ":" | "@" |
"&" | "=" | "+" | "$" | ","
uric = reserved | unreserved | escaped
Jadi batasannya adalah bahwa Anda harus melarikan diri /
jika menyangkut karakter pertama, tetapi setelah itu Anda dapat memasukkan karakter yang termasuk termasuk +
dan @
.
Inilah RFC lain untuk mendukung ini. Dalam skema RFC terbaru dari mailto yang diterbitkan pada 2010 yang disebut RFC 6068 , disebutkan:
Perangkat lunak yang membuat 'mailto'
URI juga harus berhati-hati untuk menyandikan karakter apa saja yang digunakan. Bentuk HTML adalah salah satu jenis perangkat lunak yang menciptakan 'mailto'
URI. Implementasi saat ini menyandikan ruang sebagai '+'
, tetapi ini menciptakan masalah karena '+'
berdiri untuk ruang seperti itu tidak dapat dibedakan dari nyata '+'
dalam 'mailto'
URI. Saat memproduksi 'mailto'
URI, semua ruang HARUS dikodekan sebagai
%20
, dan '+'
karakter DAPAT dikodekan sebagai %2B
. Harap perhatikan bahwa '+'
karakter sering digunakan sebagai bagian dari alamat email untuk menunjukkan subaddress, seperti misalnya dalam <bill+ietf@example.org>
.