Я использую curl с PHP для связи с MailGun API.
У меня есть два электронных письма, которые нужны моим получателям для получения электронного письма со следующими заголовками.
Не могли бы вы привести пример фрагмента кода в curl (или библиотека curl для PHP) для достижения этих заголовков почты?
— Email 1 —
From: "My Name"
Content-type: text/plain;charset="iso-8859-1"
Content-Transfer-Encoding: 8bit
— Email 2 —
MIME-Version: 1.0
From:my.domain.com <[email protected]>
Reply-To: my.domain.com <[email protected]>
Content-Type: multipart/alternative;boundary="=_730dc78ab764a3e997c2c451d9352d87"
Message-ID: <[email protected]>
Вы можете добавить в массив столько заголовков, сколько захотите, если они имеют префикс «h:», смотрите на строку
'h:Message-Id'=> '[email protected]', //Your Message-ID
Ниже приведено более подробное объяснение того, как вы можете реализовать это:
<?php
$mg_api = 'key-XXX'; //YOUR API KEY
$mg_version = 'api.mailgun.net/v2/'; //ROOT URL FOR MAILGUN
$mg_domain = "samples.mailgun.org"; //YOUR DOMAIN AS SPECIFIED IN THE CONTROL PANEL
$mg_from_email = "[email protected]"; // YOUR FROM EMAIL
$mg_reply_to_email = "[email protected]"; // YOUR REPLY-TO EMAIL (USUALLY MATCHES FROM EMAIL)
$mg_message_url = "https://".$mg_version.$mg_domain."/messages";$ch = curl_init();
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt ($ch, CURLOPT_MAXREDIRS, 3);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, false);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_VERBOSE, 0);
curl_setopt ($ch, CURLOPT_HEADER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_USERPWD, 'api:' . $mg_api);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_URL, $mg_message_url);
curl_setopt($ch, CURLOPT_POSTFIELDS,
array( 'from' => '[email protected]',
'to' => '[email protected]',
'h:Reply-To'=> ' <' . $mg_reply_to_email . '>',
'h:Message-Id'=> '[email protected]', //Your Message-ID
'subject' => 'Hello',
'html' => 'Mailgun POW POW!'
));
$result = curl_exec($ch);
curl_close($ch);
$res = json_decode($result,TRUE);
print_r($res);
Других решений пока нет …