【问题标题】:Getting Unauthorized error trying to send email with Sparkpost (Laravel 5.4)尝试使用 Sparkpost 发送电子邮件时出现未经授权的错误(Laravel 5.4)
【发布时间】:2017-09-26 20:06:01
【问题描述】:

我一直在关注 Laravel 邮件文档 https://laravel.com/docs/5.4/mail 通过 SparkPost 帐户发送电子邮件。当我尝试发送时,我得到了

ClientException
Client error: `POST https://api.sparkpost.com/api/v1/transmissions` resulted in a `401 Unauthorized` response:
{"errors": [ {"message": "Unauthorized."} ]}

根据文档,我在 config/services.php 中获得了 sparkpost 密钥,尽管文档没有提及它(为什么不!?)有点谷歌搜索说服我设置邮件驱动程序等。在我的 .env 文件中。然后我有一个网络路由来检查正在使用的配置,

Route::get('test', function()
{
    dd(Config::get('mail'));
});

给了

array:9 [▼
  "driver" => "sparkpost"
  "host" => "smtp.sparkpostmail.com"
  "port" => "587"
  "from" => array:2 [▶]
  "encryption" => "tls"
  "username" => "my-sparkpost-account-login-email-address"
  "password" => "my-sparkpost-account-login-password"
  "sendmail" => "/usr/sbin/sendmail -bs"
  "markdown" => array:2 [▶]
]

我实际上想使用我设置的可邮寄和视图,但只是为了测试发送,我绕过了这些并设置了以下路由进行测试:

Route::get('/sparkpost', function () {
  Mail::send('emails.test', [], function ($message) {
    $message
      ->from('marketing@my-sparkpost-sending-domain.com', 'Me')
      ->to('my-email-address', 'My-Name')
      ->subject('A Test Email');
  });
});

在顶部出现错误(使用我的邮件和视图进行测试给出了完全相同的错误,这让我认为它们设置正确 - 假设上述测试路线是正确的)。

我想知道的是我正在本地机器上进行测试,所以测试 URL 是 http://localhost/seg/public/sparkpost - 我想知道这是否会导致 SparkPost 出错(即我是否真的必须从服务器运行在与 sparkpost 中配置的发送域相同的域中,或者只是电子邮件中的发送地址必须匹配?)

感谢您的任何建议!

【问题讨论】:

  • 您发布的 JSON 似乎与您的设置不一致。错误来自 REST HTTP 接口,但设置似乎是针对 SMTP。我认为您需要找到 REST 设置并使用用户名/apiKey 进行设置。还要确保用户名设置为“SMTP_Injection”
  • 而且您不必从您设置的同一域上的服务器发送。这个错误几乎总是你没有给 API 密钥适当的权限,或者用户名/密码没有正确配置。

标签: laravel laravel-5 laravel-5.4 sparkpost


【解决方案1】:

如果您使用 smtp 驱动程序,

您需要转到帐户> SMTP 中继以获取 SMTP 凭据, 这不是您的 sparkpost 帐户凭据。

如果您使用 sparkpost 驱动程序,

你需要把sparkpost的api key放到config/services.php中,如果你使用sparkpost驱动不需要输入smtp用户名和密码

【讨论】:

  • 需要将sparkpost的api key放到config/services.php中,使用sparkpost驱动不需要输入smtp用户名和密码
猜你喜欢
  • 1970-01-01
  • 2021-04-06
  • 1970-01-01
  • 2012-07-22
  • 1970-01-01
  • 1970-01-01
  • 2018-01-20
  • 1970-01-01
  • 2012-08-23
相关资源
最近更新 更多