Недавно я настроил почтовый шлюз для нашего баг-трекера, который изначально задумывался как способ упростить создание отчетов об ошибках из нашего серверного программного обеспечения. Я рассказал об этом своим коллегам, и они также были счастливы иметь эту функцию, но я с ужасом обнаружил злоупотребление моей плохой системой, вызванное электронной почтой окружения.
Во-первых, адрес электронной почты отправителя выглядит ужасно искаженным, как «Имя =?ISO-8859-1?B?TGp1bmdzdHL2bQ ==?знак равно Тело письма - это вложение в формате HTML, разумеется, с ненужным количеством дополнительного кода. Вложения особенно раздражают, так как они отображаются в виде вложений заявки в трекере ошибок, а тело заявки пусто.
Я немного погуглил, но нашел только решения, предлагающие огромные уродливые скрипты на awk или perl, которые не кажутся ни обслуживаемыми, ни достаточно надежными, чтобы учесть все возможные крайние случаи для внешнего вида HTML.
Что является лучшим решением здесь?
Нашей целевой платформой является Windows Server, и я бы предпочел что-то на Python, но у нас есть установка Cygwin, и поэтому мы можем использовать другие утилиты Unix, если это будет необходимо.