Magento 2-在一个请求中多次触发的事件

Magento 2-在一个请求中多次触发的事件,magento,magento2,Magento,Magento2,我已经在Magento 2时事通讯_subscriber\u save\u after中创建了一个观察者来监视此事件。我迷路了,不知道如何继续,因为这个事件被炒了3次 观察者的目的是连接到API,并在用户添加到时事通讯时发送电子邮件。由于事件触发3次,因此观察者也将触发3次。这意味着对API进行了3次调用,唯一的解决方法是在API上创建一个停止,以防止发送3封电子邮件。这不是最好的解决办法 为什么Magento 3会为一个请求触发3个事件?有解决办法吗 另一个可怕的问题是,如果用户取消订阅前两个

我已经在Magento 2
时事通讯_subscriber\u save\u after
中创建了一个观察者来监视此事件。我迷路了,不知道如何继续,因为这个事件被炒了3次

观察者的目的是连接到API,并在用户添加到时事通讯时发送电子邮件。由于事件触发3次,因此观察者也将触发3次。这意味着对API进行了3次调用,唯一的解决方法是在API上创建一个停止,以防止发送3封电子邮件。这不是最好的解决办法

为什么Magento 3会为一个请求触发3个事件?有解决办法吗

另一个可怕的问题是,如果用户取消订阅前两个事件,则用户已订阅,而只有第三个事件,用户才会被设置为取消订阅?我很困惑。我已经读过关于使用插件的内容,但是我真的想把这个模块的重点放在观察者上。这不可靠吗

我对Magento是新手,但这让我怀疑我是否用错误的方式看待它


您找到解决方案了吗?我还接到“销售\订单\保存\之前”事件电话2次否!我还没有找到任何解决方案,这就是Magento的工作原理。但是,有一种方法可以防止观察者多次作出反应,但它需要使用注册表记录第一次调用并跳过任何正在进行的调用。我计划下周再继续学习这个模块。你找到解决方案了吗?我还接到“销售\订单\保存\之前”事件电话2次否!我还没有找到任何解决方案,这就是Magento的工作原理。但是,有一种方法可以防止观察者多次作出反应,但它需要使用注册表记录第一次调用并跳过任何正在进行的调用。我计划下周再回去学习那个模块。