@Sviterast

Отправить письмо с вложением?

Нашел несколько решений по отправлению, но при прикреплении файла он приходит пустым, то есть размером 0 байт или поврежденным, как решить это?
  • Вопрос задан
  • 367 просмотров
Решения вопроса 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Обычно проблема в несоответствии письма стандарту SMTP. Нужно сгенерировать multipart-письмо, где одной из частей и будет вложенный файл. В минимальном варианте исходник письма должен выглядеть так:
Основные заголовки письма\r\n
Content-Type: multipart/mixed; boundary="разграничитель"\r\n
\r\n
--разграничитель\r\n
Content-Type: text/plain; charset="UTF-8";\r\n
\r\n
Основной текст письма\r\n
--разграничитель\r\n
Content-Type: правильный mime-тип, например application/octet-stream; name="имя файла"\r\n
Content-Transfer-Encoding: base64\r\n
Content-Disposition: attachment; filename="имя файла"\r\n
\r\n
Файл, закодированный в base-64\r\n
--разграничитель--\r\n

Пустые строки после заголовка и подзаголовков обязательны.
Ответ написан
Комментировать
@Sviterast Автор вопроса
blog.kislenko.net/show.php?id=759 Готовый пример
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы