Отправить письмо на softlayer

В Softlayer Portal я заказал службу доставки электронной почты. и я могу видеть это в списке. но как можно отправить письмо с Java API.

Я пытался отправить письмо с кодом ниже.

Email email = new Email();
email.setfrom();
email.setBody();
email.setTo();
Boolean result = service.sendEmail(email);`

но он показывает ошибку, что "ID требуется для вызова службы"

если вы поделитесь примером кода, это также будет полезно. Спасибо

1 ответ

Чтобы использовать метод sendEmail, необходимо указать параметры инициализации (SoftLayer_Network_Message_Delivery_Email_SendgridInitParameters), вы можете увидеть это в разделе "Требуемые заголовки" из http://sldn.softlayer.com/reference/services/SoftLayer_Network_Message_Delivery_Email_Sendgrid/sendEmail вы можете получить информацию о параметрах метода init, подробнее вы можете получить.

Таким образом, вы можете получить объекты "SoftLayer_Network_Message_Delivery_Email_Sendgrid" следующим методом: http://sldn.softlayer.com/reference/services/SoftLayer_Account/getNetworkMessageDeliveryAccounts, здесь запрос Rest:

https://$username:$apiKey@api.softlayer.com/rest/v3/SoftLayer_Account/getNetworkMessageDeliveryAccounts

Method: Get

Вы получите такой результат:

0:  {
"accountId": 123456
"createDate": "2015-05-15T06:35:56+12:00"
"id": 24564
"modifyDate": "2016-01-08T05:59:57+11:00"
"password": "Password123*"
"typeId": 21
"username": "newemail@softlayer.com"
"vendorId": 1
"emailAddress": "email@softlayer.com"
"smtpAccess": "1"
}

Итак, вам нужно указать "id" в службе, которую вы используете (SoftLayer_Network_Message_Delivery_Email_Sendgrid). Это должно выглядеть так в Java:

Long sendGridId = new Long(24564);
Sendgrid.Service sendgridService = Sendgrid.service(client, sendGridId);

Это не работает нормально для меня, кажется, клиент API SoftLayer для Java имеет проблему с указанием параметров инициализации для службы "SoftLayer_Network_Message_Delivery_Email_Sendgrid". Вы можете проверить это и отправить проблему, если не можете указать этот клиент SoftLayer API для проблем Java.

На самом деле, я могу предоставить запрос на отдых, который работает нормально:

https://$user:$apiKey@api.softlayer.com/rest/v3/SoftLayer_Network_Message_Delivery_Email_Sendgrid/24564/sendEmail

Method: Post

{  
   "parameters":[  
      {  
         "body":"set me",
         "from":"set me",
         "to":"set me",
         "subject":"set me"
      }
   ]
}

Рекомендации:

http://sldn.softlayer.com/reference/services/SoftLayer_Network_Message_Delivery_Email_Sendgrid/sendEmail

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