2017-01-18 7 views
3

Я перерабатываю проект, который имеет SendGrid, интегрированный для рассылки.Категория SendGrid не установлена ​​

Ну, я использую Laravel и классы разрешенных к пересылке по почте, и я создал функцию, чтобы установить категорию SendGrid:

public function setSendgridCategory($category){ 
    $encodedCategory = json_encode(['category' => $category]); 
    $this->withSwiftMessage(function (\Swift_Message $message) use ($encodedCategory){ 
     $message->getHeaders()->addTextHeader('X-SMTPAPI', $encodedCategory); 
    }); 
} 

У меня есть слушатель, который регистрирует мои заголовки, и они выглядят как:

Date: Wed, 18 Jan 2017 13:47:32 +0100 
Subject: XXXXXXXXX. 
From: xXXXXXx <[email protected]> 
To: XXXXxxx <[email protected]> 
MIME-Version: 1.0 
Content-Type: text/html; charset=utf-8 
Content-Transfer-Encoding: quoted-printable 
X-SMTPAPI: {"category":"Otros"} 

также попытался с массивом

X-SMTPAPI: { "категория": [ "Otros"]}

Название категории точно совпадает с именем, которое уже отслеживается в SendGrid, но когда я смотрю журнал активности SendGrid, отправляется электронное письмо, но ни одна категория не задана.

Любые идеи?

+0

Конфигурации Sendgrid правильно установлены под вашим почтовым драйвером, правильно? Письма отправляются, только вопрос относится к категории, да? – Gayan

+0

Да, электронные письма отправляются, и html отлично разбирается, просто категория. –

ответ

0

Ну, после тестирования всего, что пришло мне в голову, и возиться с кодировками, как предположил @bwest, изменение драйвера на моем .env-файле разрешило его.

я не знаю, где я получил его от, но я мой водитель установлен как

MAIL_DRIVER=sendgrid 

и это отправка почты правильно, поэтому я не обратил на это внимание, я изменил его до

MAIL_DRIVER=smtp 

и теперь мои категории установлены правильно.

2

Категория должна быть массивом. Попробуйте: {"category":["Otros"]}

+0

Вы также попробовали X-SMTPAPI: {"category": ["Otros"]} –

+0

hmmm ... какая кодировка и кодировка - это строка, которую вы передаете 'setSendgridCategory'? Категории должны быть в 7-бит/US-ASCII. Попытайтесь сделать кодировку и кодировку возможно. – bwest

+0

Строка находится в ASCII, я попытался изменить заголовок Content-Transfer-Encoding на 7-bit/US-ASCII, но не везет –

Смежные вопросы