У меня довольно простая настройка, где я беру вложения файлов, которые перетаскиваются на интерфейс, а затем сохраняю имя файла в базе данных и сохраняю файлы в aws. Теперь имя файла записывается правильно и просто сохраняется в базе данных, но при вызове контроллера для сохранения файлов в AWS у меня возникают проблемы.
В настоящее время я получаю сообщение об ошибке «Вызов функции-члена getClientOriginalExtension () on string ", но строка - это как минимум правильное имя файла.
Что я делаю не так и как я могу получить это, чтобы правильно сохранить в моем AWS ведре?
attach. vue
let data = {
attachment:file.upload.filename
};
axios.post('/attachment/save', data)
.then((response) => {
console.log(response.data);
})
контроллер. php
public function save(Request $request)
{
$filename = (string) Str::uuid();
$filename .= '.' . $request->attachment->getClientOriginalExtension();
$path = $request->attachment->storeAs('attachments', $filename, 's3');
}