我正在尝试使用sendgrid从本地主机发送电子邮件,软件包s-ichikawa 2.1.0,laravel 5.7.29,我收到此错误
客户端错误:
POST https://api.sendgrid.com/v3/mail/send
导致403 Forbidden
响应:{“错误”:[{“消息”:“”发件人地址与验证的发件人身份不匹配。在此之前无法发送邮件错误(已截断...)*
相同的代码可用于API的其他项目,但可用于本地主机。
我的控制器代码:
$email = 'umermajeed93@hotmail.com';
$name = 'Umer Majeed';
Mail::to($email)->send(new SendMailable($name ,$email))
<?php
namespace App\Mail;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;
use Sichikawa\LaravelSendgridDriver\SendGrid;
class SendMailable extends Mailable
{
use Queueable, SerializesModels;
use SendGrid;
public $name;
public $code;
public $email;
/**
* Create a new message instance.
*
* @return void
*/
public function __construct($name,$email)
{
$this->name = $name;
$this->email = $email;
}
/**
* Build the message.
*
* @return $this
*/
public function build()
{
$address = 'noreply@retailplatform.com';
$subject = 'New Ad';
return $this
->view('Admin.email')
->subject($subject)
->from($address)
->to([$this->email])
->sendgrid([
'personalizations' => [
[
'substitutions' => [
':myname' => 's-ichikawa',
],
],
],
])->with('name',$this->name);
}
}
答案 0 :(得分:0)
在测试环境中,只有电子邮件会发送到您在.env文件中设置的测试帐户:
MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=
MAIL_PASSWORD=
在生产环境中,您已经可以将电子邮件发送给您选择的收件人,但是在本地服务器上您不能