Sendgrid и Java

Я использую java api для отправки почты sendgrid. Разработайте динамический транзакционный шаблон. Отправляю из java запрос с нужными атрибутами. В sendgrid приходит пустой атрибут персонализации. Я ценю тех, кто может меня поддержать.

Ява

Mail mail = new Mail();
if (!subject.isEmpty()) {
  mail.setSubject(subject);
}
Personalization personalization = new Personalization();
mail.setFrom(createFromEmail());
if (fields!=null) {
  for (Map.Entry<String, String> entry : fields.entrySet()) {
    personalization.addSubstitution(entry.getKey(), entry.getValue());
  }

}
for (Map.Entry<String, Object> entry : dynamicTemplateData.entrySet()) {
  personalization.addDynamicTemplateData(entry.getKey(), entry.getValue());
}
Email to = new Email();
to.setName(toName);
to.setEmail(toEmail);
personalization.addTo(to);
mail.addPersonalization(personalization);
mail.setTemplateId(templateId);
SendGrid sg = new SendGrid(GlobalVariable.getInstance().getSendGridApiKey());
Request request = new Request();
try {
request.setMethod(Method.POST);
request.setEndpoint("mail/send");
request.setBody(mail.build());
Response response = sg.api(request);
if (response.getStatusCode() == 200) {
   return true;
}
} catch (IOException ex) {
//TODO: WRITE ERROR LOG
return false;
} catch (Exception e) {

GlobalVariable.EscribirError (Thread.currentThread (). GetStackTrace () 1.getClassName (), Thread.currentThread (). GetStackTrace () 1.getMethodName (), e, ""); }

Шаблон Sendgrid

</table>
{{#each personalizations}}
<table class = "module" role = "module" data-type = "text" border = "0" cellpadding = "0" cellspacing = "0" width = "100%" style = "table-layout: fixed;">
<tr>
<td style = "padding:45px 45px 0px 45px;line-height:22px;text-align:inherit;"
height = "100%"
valign = "top"
bgcolor = "">
<div style = "text-align: left;"><span style = "color:#333333;">Hola {{this.dynamic_template_data.subject}}
</span></div>
</td>
</tr>
<tr>
<td style = "padding:30px 45px 30px 45px;line-height:22px;text-align:inherit;"
height = "100%"
valign = "top"
bgcolor = "">
<div style = "text-align: left;"><span style = "color:#333333;">Para finalizar tu compra te hemos redireccionado a www.portsaid.com
Próximamente vas a poder completar este proceso a través de nuestra aplicación.
Tu selección:
</span></div>
</td>
</tr>
</table>

Запрос { "от": { "name": "Провашоп", "электронная почта": "[email protected]" }, "персонализации": [ { "к": [ { "name": "Алехандро", "электронная почта": "[email protected]" } ], "dynamic_template_data": { "subject": "Экстенальный магазин", "Предметы": [ { "idSearchingClothes": 0, "createdOn": null, "lastModified": нуль, "удалено": ноль, "одежда": { "idClothes": 0, "имя": ноль, "описание": ноль, «статус»: 0, "createdOn": null, "lastModified": нуль, "удалено": ноль, "пол": ноль, "clothingDesc": [

]
},
 "idUser": 0,
 "name": "CAMISA",
 "price": 390.0,
 "idStoreCatalog": 1,
 "idProviderItem": 82,
 "providerCode": "82",
 "brand": null,
 "url": "https://marketing-image-production.s3.amazonaws.com/uploads/d13f90f1285040cd12f86d57ab9e61fee852def9f17e9d65c7a875b213c0fc414235679aa4016327adad5e78758cd9d131db32da4385e226d43fe01cfcd273eb.png",
"productId": 0,
"idVariation": 54,
"bought": false
 }
 ]
 }
 }
],
"template_id": "d-74bb8c95637147968e62e47b86362733"
}

введите описание изображения здесь

Привет, Алехандро, не могли бы вы показать нам свой код?

Michael McMullin 13.12.2018 17:04

Привет, Майкл Макмаллин, уже разместил код

Alejandro Rojas 13.12.2018 17:17

Следует как минимум бревно исключений.

Joop Eggen 13.12.2018 17:23

Joop Привет, если вы регистрируете исключения. На самом деле, без исключения, я отправляю электронное письмо, но оно не показывает информацию

Alejandro Rojas 13.12.2018 17:48
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
4
268
0

Другие вопросы по теме