我创建的字符串MIME消息你可以看到下面。如果你愿意,可以自己设定功能。
我编码的主题和消息与base64_encode
并把=?utf-8?B?
到起点和?=
到每一个的结尾。
$mimeMessage = "MIME-Version: 1.0\r\n";
$mimeMessage = "From: Fullname <[email protected]>\r\n";
$mimeMessage .= "To: Fullname <[email protected]>\r\n";
$mimeMessage .= "Subject: =?utf-8?B?".base64_encode('Sample Subject Which Contains Non-Latin Characters')."?=\r\n";
$mimeMessage .= "Date: ".date(DATE_RFC2822)."\r\n";
$mimeMessage .= "Content-Type: multipart/alternative; boundary=test\r\n\r\n";
$mimeMessage .= "--test\r\n";
$mimeMessage .= "Content-Type: text/plain; charset=UTF-8\r\n";
$mimeMessage .= "Content-Transfer-Encoding: base64\r\n\r\n";
$mimeMessage .= base64_encode('Sample email message which contains non-latin chcracters')."\r\n";
使用换行符时要小心。一些线路需要\r\n\r\n
然后,编码整个$mimeMessage
作为Gmail的API请求:
$mimeMessageEncoded = base64url_encode($mimeMessage);
确保你的base64urlencode不仅仅是base64encode,否则你会遇到错误。 – flyingL123