2

我正在使用RabbitMQBundle将 RabbitMQ 集成到我的 symfony2 项目中。一切正常(我可以生成和使用消息)。但是,每当我尝试使用来自消费者的 Swift_Message 发送电子邮件时,我都不会收到电子邮件。不过,从消费者那里使用mail('foo@bar.com', 'subject', 'message');确实有效。

这是我用来发送 Swift_Message 的代码:

 $message = \Swift_Message::newInstance()
    ->setSubject($subject)
    ->setFrom('noreply@bar.com')
    ->setTo('foo@bar.com')
    ->setBody('Foo Bar');

  $this->container->get('mailer')->send($message);

此代码在“普通”控制器或服务中工作。但是,当 RabbitMQ 在消费者中触发时,它不起作用。

有人有线索吗?

4

1 回答 1

9

您应该禁用 swiftmailer 的假脱机功能:删除spoolswiftmailer 捆绑配置的。

从获得

swiftmailer:
    # ...
    spool: { type: memory }

swiftmailer:
    # ...

您可以在此处阅读有关此功能的更多信息。

于 2012-11-10T16:36:45.113 回答