2015-01-29 6 views
0

Я пытаюсь использовать postmark api для отправки html-письма с изображениями в нем. Я знаю, что postmark поддерживает встроенные вложения изображений, но я не знаю, как это сделать. Я просмотрел документацию, но приведенный здесь пример кажется смутным, и я это понимаю. Как это сделать?Встроенные вложения изображений с postmark api

ответ

1

Ваш API вызов будет в основном выглядеть следующим образом:

{ 
    "From": "[email protected]", 
    "To": "[email protected]", 
    "Subject": "Regular API Test", 
    "Tag": "inline", 
    "HtmlBody": "<html><body><strong>hello bacon!</strong<br /><img src=\"cid:myimagecid\"/></body></html>", 
    "TextBody": "Hello", 
    "Attachments": [ 
     { 
      "Name": "bacon.jpg", 
      "Content": "/9j/4AAQSkZJRgABAQEAZABkAAD/2wBDAAQDAwQDAwQEBAQFBQQFBwsHBwYGBw4KCggLEA4RERA...gDgBAA9GT/APrP/9k=", 
      "ContentType": "image/jpeg", 
      "ContentID": "cid:myimagecid" 
     } 
    ] 
} 

Вы составить свой HTML со ссылками на изображения путем в ContentID (CID) вместо указания ссылки на источник. Затем вы вставляете преобразованную base64 образ вашего изображения в качестве части содержимого вложения. Поле ContentID позволяет html знать, где найти данные изображения в письме.

Вы можете использовать фреймворк любой платформы, используемой для кодирования изображений в качестве base64. Чтобы практиковать, попробуйте сайт, такой как http://www.base64-image.de/step-1.php, который даст вам строку base64 загруженного изображения.

+0

в порядке. Я закодировал изображение, но строка base64 действительно большая. Тонны линий. Есть ли способ минимизировать это? –

+0

@ss_millionaire Нет, эта строка является полным представлением вложения или изображения, которое вы используете. Он должен быть большим, но он будет только большим, в байтах, как само приложение, так что это нормально и ожидается. –