Имя формата электронного адреса

Учитывая адрес электронной почты в формате

John Doe <john@example.com>

Интересно, где этот формат явно определен и как все это называется. Кажется, это не указано в rfc5322 (по крайней мере, я не нашел). Итак, учитывая адрес, указанный выше, как бы вы назвали следующие переменные-члены, если бы вам пришлось определить для них класс?

  • John Doe (имя)
  • john@example.com> (адрес)
  • John Doe <john@example.com> -> как вы все это называете?

2 ответа
2

Джон Доу john@example.com -> как вы все это называете?

Он называется почтовым ящиком, как указано в RFC 5322 на стр. 45:

3.4. Указание адреса

Адреса встречаются в нескольких полях заголовка сообщения, чтобы указать отправителей и получателей сообщений. Адрес может быть отдельным почтовым ящиком или группой почтовых ящиков.


Обычно почтовый ящик состоит из двух частей: (1) необязательного отображаемого имени, которое указывает имя получателя (которое может быть человеком или системой), которое может отображаться пользователю почтового приложения, и (2) адрес со спецификацией addr, заключенный в угловые скобки («<" и ">«). Существует альтернативная простая форма почтового ящика, в которой адрес addr-spec отображается отдельно, без имени получателя или угловых скобок. Адрес Интернет-адреса описан в разделе 3.4.1.

Источник 3.4. Указание адреса

Смотрите также Приложение A.1.2. Различные типы почтовых ящиков

  • Picardfacepalm

    — Эрик Айгнер
    6 часов назад

И все же это в RFC5322, вы просто недостаточно осторожны:

address         =   mailbox / group
mailbox         =   name-addr / addr-spec
name-addr       =   [display-name] angle-addr
angle-addr      =   [CFWS] "<" addr-spec ">" [CFWS] / obs-angle-addr
group           =   display-name ":" [group-list] ";" [CFWS]
display-name    =   phrase
mailbox-list    =   (mailbox *("," mailbox)) / obs-mbox-list
address-list    =   (address *("," address)) / obs-addr-list
group-list      =   mailbox-list / CFWS / obs-group-list

Давайте разберемся с этим.

address либо mailbox или group. А mailbox это name-addr или же addr-spec.

Этот name-addr это формат, о котором вы спрашиваете: есть необязательный display-name (это необязательно, потому что он определен в квадратных скобках), за которым следует angle-addr, который сам по себе addr-spec в угловых скобках с дополнительным складным пространством CFWS по обе стороны от него (определено далее в раздел 3.2.2) или устаревший формат адреса obs-angle-addr.

Целое раздел 3.4.1 посвящен описанию addr-spec формат.

Итак, в заключение:

  • John Doe <john@example.com> это name-addr, который является вариантом mailbox, который является вариантом address.
  • John Doe это display-name
  • <john@example.com> является angle-addr
  • john@example.com является addr-spec
  • john это local-part
  • example.com это domain.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *