Что происходит, когда `=?iso8859-1?B?`...`?=` появляется в адресе электронной почты?

Что происходит, когда `=?iso8859-1?B?`...`?=` появляется в адресе электронной почты?

Я вижу что-то вроде =?iso8859-1?B?... ?=в адресах электронной почты. Я предполагаю, что это определено в каком-то RFC. Может кто-нибудь объяснить, где? Это, предположительно, устарело сейчас, когда все в Unicode?

решение1

Это формат RFC 2047 "Закодированное слово", используемый в сообщениях электронной почты формата MIME (т.е. практически во всех из них) для помещения 8-битных данных в 7-битный ASCII. Он не имеет ничего общего с HTTP GET или строками запросов.

Encoded-word относится к заголовкам так же, как Content-Transfer-Encoding к телу сообщения — оба используют форматы Base64 или Quoted-Printable для преобразования 8-битных данных в 7-битные данные ASCII, и оба являются обычным явлением в сообщениях.

Однако обычно вы никогда не увидите такой закодированный текст в своем почтовом приложении (кроме просмотра источника сообщения) – он всегда должен отображаться в декодированном виде в пользовательском интерфейсе. Если почтовое приложение показывает вам необработанное закодированное слово, то, скорее всего, его не удалось правильно декодировать (например, отправитель указал неправильный набор символов).

Этот формат не устарел из-за Unicode; он решает другую задачу и одинаково применим ко всем наборам символов. Действительно, вы часто будете видеть, как текст Unicode кодируется как =?utf-8?....

Однако, этоможетбыть устаревшим из-за расширения SMTP "8BITMIME". Как и многие вещи электронной почты, он пришел из эпохи, когда некоторые сети не были "чистыми 8 бит" и могли отбрасывать или искажать значение старшего бита — то, что больше не относится к современному программному обеспечению SMTP, работающему через TCP/IP.

решение2

Скорее всего, это сгенерированное письмо от программного обеспечения с неправильно настроенным плагином или плохо написанным. "=" и "?", вероятно, указывают на то, что параметры GET передаются (и неправильно интерпретируются/неправильно упорядочиваются) в какой-то функции.

См. например: (https://magento.stackexchange.com/questions/37663/plugin-email-sender-incorrectly-uses-iso-8859-1), где автор цитирует похожее искажение, основанное на ошибке.

Из: =?iso-8859-1?Q? (...) =[email protected]

Связанный контент