使用Sendgrid用PHP发送电子邮件时遇到问题-我尝试发送最简单的电子邮件,我的状态为202,但没有发送电子邮件。
我已经与SendGrid支持团队联系,以确认我的API KEY有效并且具有正确的权限。
我使用:
- PHP 7.3.0
- Composer 1.8.3
这是我的composer.json:
{
"require": {
"sendgrid/sendgrid": "^7.3",
"sendgrid/php-http-client": "~3.9.6"
}
}
我制作了最简单的测试端点来发送电子邮件。在这里-> http://konfiguratorszkolen.pl/send-email/test.php
此PHP中的代码如下:
<?php
require 'vendor/autoload.php';
$email = new \SendGrid\Mail\Mail();
$email->setFrom("testemail1@gmail.com", "Example User");
$email->setSubject("Sending with Twilio SendGrid is Fun");
$email->addTo("testemail2@gmail.com", "Example User");
$email->addContent("text/plain", "and easy to do anywhere, even with PHP");
$email->addContent(
"text/html", "<strong>and easy to do anywhere, even with PHP</strong>"
);
$sendgrid = new \SendGrid("MyValidAPIKey");
try {
$response = $sendgrid->send($email);
print $response->statusCode() . "\n";
print_r($response->headers());
print $response->body() . "\n";
} catch (Exception $e) {
echo 'Caught exception: '. $e->getMessage() ."\n";
}
?>
Sendgrid支持团队说,我不向https://api.sendgrid.com/v3/mail/send端点发送POST请求。但是不应该$ response = $ sendgrid-> send($ email);做这份工作吗?
可能是什么问题?如何到达终点?
我想补充一点,这种代码在5月完美运行。它在几周前停止了。我在做什么错了?