Я пытаюсь отправить файл, выбранный пользователем через форму HTML, и отправить его как вложение электронной почты с помощью Mailgun. Я не хочу хранить этот файл где-либо на моем сервере. Мне нужно иметь возможность загружать все виды файлов (png, pdf, word ...).
Это то, что я пробовал до сих пор.
Внешний вид выглядит так:
HTML
<label>
Click to attach file...
<input type="file" id="file" ref="file" v-on:change="handleFileUpload" name="fileToUpload">
</label>
Скрипт (VueJS)
let formData = new FormData();
formData.append('file', this.welcomeMail.attachment);
axios
.post('/admin/customersV2/sendWelcomeMail',formData,
{
headers: {
'Content-Type': 'multipart/form-data'
}
})
Backend (php - Laravel) выглядит так:
$mgClient->messages()->send($domain,
array('from' => env('MAIL_FROM_ADDRESS'),
'to' => $request->emailAddress,
'cc' => env('MAIL_CC'),
'subject' => 'Greetings',
'template' => 'welcome-template',
'attachment' => [
[
'filePath' => $request->file->path(),
'fileName' => 'Attachment'
]
],
'h:X-Mailgun-Variables' => $mailgunVariables)
Но в моем письме вложение пустое (см. Снимок экрана ниже):
Спасибо за вашу помощь.