Какой пакет от CPAN я должен использовать для отправки почты?

Какой пакет от CPAN я должен использовать для отправки почты?

Когда-то подход timtowtdi очень утомителен. Для меня, особенно когда дело доходит до выбора пакета.

Таким образом, все, что я хочу, должно послать электронное письмо, потенциально электронные письма HTML. Между Почтой-Sendmail, Почтовым Отправителем, сетевым SMTP (-не доступный в PPM), Почтой-SendEasy и приблизительно 80 другими пакетами, которые имеют 'Почту' на их имя пакета - какой я должен выбрать?

И в то время как в этом предмете, что Ваш общий apprach должен выбрать "канонический" пакет для бега трусцой. Т.е. пакет, что "все используют". Там кто-либо оценивает или рекламный щит популярности где-нибудь?

7
задан Konerak 27 May 2010 в 08:27
поделиться

6 ответов

каков ваш общий подход к выбору "канонического" пакета для jog. Т.е. пакет, который "все используют". Есть ли где-нибудь рейтинг или табличка популярности?

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

Документация:

Лакмусовой бумажкой для модулей CPAN является первая страница документации. Если там неаккуратный синопсис или синопсис без простого рабочего примера, я считаю, что модуль, скорее всего, не очень хороший. Неопрятная, грязная или неправильно отформатированная документация также является тревожным сигналом.

Состояние ремонта:

  • дата выпуска последней версии модуля говорит вам, поддерживается ли он,
  • отчеты тестеров CPAN говорят вам, скорее всего, модуль будет установлен без проблем
  • список ошибок на rt.cpan.org дает вам некоторое представление о том, насколько активно автор поддерживает модуль.

Также, есть ли список рассылки для модуля? Наличие списка рассылки - хороший признак качественного, поддерживаемого, стабильного, документированного и популярного модуля.

Автор:

  • Как зовут автора модуля?
  • Сколько других модулей выпустил автор?
  • Какие модули выпустил автор?

Автор - важный фактор. Есть авторы, которые создают вещи отличного качества, такие как Gisle Aas, Graham Barr, Andy Wardley или Jan DuBois, а есть люди, которые выпускают много вещей, которые можно назвать "экспериментальными", такие как Damian Conway или Tatsuhiko Miyagawa. Опасайтесь людей, которые выпустили много модулей Acme:: (шутка) модулей. Также остерегайтесь вещей, написанных людьми, которые поддерживают только один или два модуля. Люди, у которых в общей сложности меньше пяти модулей, обычно не поддерживают их.

Прочее:

cpanratings.perl.org часто бывает полезен, но воспринимайте его с долей соли.

Кроме того, многое из этого - просто метод проб и ошибок. Скачайте и посмотрите, проходит ли он свои собственные тесты, посмотрите, есть ли у него вообще тесты, напишите тестовый скрипт и т.д.

Вещи, которые часто не дают значимого рейтинга:

  • Лучшие результаты в Google обычно представляют собой древние Perlmonks или perl.com или статьи из журнала доктора Доббса, и они часто указывают вам на устаревшие вещи.
  • Функция поиска на search.cpan.org помещает модули, которые не обновлялись в течение десяти лет, на первую страницу, а самые последние и лучшие - на десятую или около того.

Остерегайтесь "шумихи":

Еще одна вещь, которую я хочу сказать: Опасайтесь советов в блогах, на stackoverflow, в новостях Usenet и т.п. - люди склонны направлять вас к любому модулю, который является "ароматом месяца", а не к стабильному, проверенному решению. "Модные" модули обычно не имеют документации, нестабильны, имеют кошмарные зависимости, и довольно часто вчерашние модные модули внезапно выходят из моды и от них отказываются, чтобы заменить их другим модулем месяца, оставляя вас в затруднительном положении, если вы решите их использовать.

15
ответ дан 6 December 2019 в 06:35
поделиться

Задача :: Кеншо обычно дает хорошие рекомендации. Для отправки электронной почты он предлагает Email :: Sender

9
ответ дан 6 December 2019 в 06:35
поделиться

Я добавлю Email::Stuff. Это хорошая обертка для Email::MIME. Вам не нужно заботиться о MIME-структуре почты, модуль делает это за вас.

Email::Stuff->from     ('cpan@ali.as'                      )
            ->to       ('santa@northpole.org'              )
            ->bcc      ('bunbun@sluggy.com'                )
            ->text_body($body                              )
            ->attach   (io('dead_bunbun_faked.gif')->all,
                        filename => 'dead_bunbun_proof.gif')
            ->send;

Что касается выбора модулей,

3
ответ дан 6 December 2019 в 06:35
поделиться

Если вам не нужно ничего, кроме основных функций, я предлагаю взглянуть на Mime :: Lite .

use MIME::Lite; 
my $msg = new MIME::Lite
From => 'Your friendly neighbourhood spiderman',
To => 'green@goblin.net', 
CC => 'info@nemesis.org',
BCC => 'mj@spidey.info',
'Reply-to' => 'enemies@spidey.info',
Subject => 'Please stop',
Data     => $data; #Email body

die 'Could not send mail' unless ($msg->send);
0
ответ дан 6 December 2019 в 06:35
поделиться

Вы можете использовать Email :: Send
http://search.cpan.org/dist/Email-Send/lib/Email/Send.pm

0
ответ дан 6 December 2019 в 06:35
поделиться

Я предпочитаю

Mail :: Sendmail

MIME :: Lite

Если вам требуется SSL, включите

Net :: SMTP :: SSL

0
ответ дан 6 December 2019 в 06:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: