私はPHPMailerを使用して電子メールをMIME文字列として作成しており、curl
を使用して/v3/[mydomain]/messages.mime
エンドポイントに接続するMailgun API経由で送信したいとします。Mailgun API経由でMailgunライブラリ経由で送信
Mailgun documentationは、MIME文字列をmessage
パラメータとして送信する必要があり、multipart/form-data
をファイルアップロードとして送信する必要があると言います。
libcurl documentationによると、CURLOPT_POSTFIELDSオプションに配列を指定すると、Content-typeはmultipart/form-data
に設定されます。次のように
curl_setopt($ch, CURLOPT_POSTFIELDS, ["message" => $mimeData]);
しかしMailgunのAPIの答え:
$mimeFile = tmpfile();
fwrite($mimeFile, $mimeData);
:
{ "message": "'message' parameter is not a file" }