【问题标题】:Api Platform with Swift Mailer带有 Swift Mailer 的 API 平台
【发布时间】:2019-10-24 13:37:45
【问题描述】:

我会知道API PlatformSwift Mailer 是否可靠。事实上,我会在添加新任务时使用 Swift Mailer 发送电子邮件。当我使用控制器时效果很好,但不适用于 Postman 或 Swagger UI。

//mail sending
       $message = (new \Swift_Message('New task has done !'))
           ->setContentType('text/html')
           ->setFrom("fromAdresse@sample.fr")
           ->setTo('sample@email.com')
           ->setBody(
               $this->renderView('email/new.html.twig',
                    ['work' => $work]));
        $mailer->send($message);

当用户通过 API UI 时我会使用相同的东西,是否可以处理请求?因为控制器和 API 没有相同的路由。

API : /api/works (POST) 添加元素

Controller : work/new (POST) 也添加一个元素

如何在 API 平台 Request 上使用 Swift Mailer?或者如何使用自定义控制器处理请求?

谢谢你的建议和答案,我都是初学者。

【问题讨论】:

    标签: api email symfony4 swiftmailer api-platform.com


    【解决方案1】:

    最好的方法是使用实​​体侦听器(请参阅https://www.doctrine-project.org/projects/doctrine-orm/en/2.6/reference/events.html) - 您可以在那里检测创建/更新/删除操作并执行其他操作,例如发送电子邮件。最好将所有控制器/api/其他请求的消息逻辑放在一个地方:-)

    请注意选择正确的 Doctrine 事件。并阅读有关在这些侦听器中修改实体的详细信息(即,将“已发送电子邮件”标志或任何其他值存储到其他实体。这并不简单:-))。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-02-11
      • 1970-01-01
      • 2011-06-07
      • 2018-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多