微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

来自 SendGrid 的这封电子邮件在 PHP API 中指的是什么?

如何解决来自 SendGrid 的这封电子邮件在 PHP API 中指的是什么?

几天前,我们收到了一封来自 sendgrid 的电子邮件,说他们将改变他们 API 中的一些行为,我已经做了研究,但我还没有找到他们所指的具体内容,目前我们正在使用 PHP API ,至少对于 2) 我认为我们没问题,因为我们使用 SendGrid 类来构建电子邮件

检查您使用邮件发送端点的代码并确保 如果适用,“启用”参数包含在过滤器下。

你需要做什么?

为避免您的邮件发送服务中断,请务必使 2021年8月10日前的以下操作

  1. 检查您使用邮件发送端点的代码并确保 如果适用,“启用”参数包含在过滤器下。

  2. 检查您的邮件发送标头以确保您只使用一个 X-SMTPAPI 头和地址头的类型相同。删除多个 相同类型的标题,因此您只有 1 个相同类型的标题。 例如,如果您当前正在使用多个“来自”标头,则您 应该修改您的代码,以便您有一个“发件人”标头。

  3. 检查您的代码以确保您没有应用任何 个性化块替换您的自定义参数字段。

但是第三项呢?我们有以下时尚的替代品:$mail->personalization[0]->addSubstitution('%url%',$link); 但我还没有发现像“自定义参数中的块替换”之类的东西

第一项也让我担心,我也没有发现类似的东西,所以我担心 PHP API 在幕后做了一些事情。

这是我们使用的代码示例。

$sendgrid = new SendGrid(env('SENDGRID_APIKEY'));
$from_m = new SendGrid\Email(null,$from);
$to_m = new SendGrid\Email(null,$from);
$content = new SendGrid\Content("text/html",$body);
$mail = new SendGrid\Mail($from_m,'.',$to_m,$content);
$mail->personalization[0]->addBcc($tos);
$mail->personalization[0]->setSubject($subject);
$mail->personalization[0]->addSubstitution('%MemberName%',$name);
$mail->personalization[0]->addSubstitution('%url%',$hash_url);
$mail->setTemplateId($template_id);
$sendgrid->client->mail()->send()->post($mail);

我们正在使用 sendgrid/sendgrid: ~6.2

解决方法

这里是 Twilio SendGrid 开发者布道者。

从我阅读您的代码和发送给您的指南来看,您应该没问题。

  1. 您似乎没有使用任何需要通过 API 启用的东西,尽管您可以check all the mail_settings and tracking_settings in the API reference here

  2. 当您使用库并调用 API 时,您似乎没有发送任何额外的标头。

  3. 您似乎没有使用任何自定义参数,因此您没有对它们应用任何替换。

我确实建议您将 PHP 帮助程序库从 6 版升级到 7 版。这将确保底层库也以最新的方式使用 API。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。