@700Hp

Как отправить файл на сервер?

<form @submit.prevent="onSubmit" class="form" enctype="multipart/form-data">
      <input type="file" name="file" id="file" ref="file" @change="handleFileUpload">
      <button>
        Тест
      </button>
    </form>


setup() {
    const file = ref(null)

    const onSubmit = async () => {
      const formData = new FormData()
      formData.append('file', file.value[0])
      console.log(formData)
      await test(formData)
    }

    const handleFileUpload = () => {
      file.value = file.value.files
    }


    return {
      onSubmit,
      file,
      handleFileUpload
    }


const $authHost = axios.create({
  withCredentials: true,
  baseURL: process.env.VUE_APP_SERVER_URL,
})

export const test = async (file) => {
  const {data} = await $authHost.post('/documents/create', file, {
    headers: {
      'Content-type': 'multipart/form-data'
    }
  })
  return data
}


При отправки формы объект formData всегда пустой. На сервер приходит Undefined
  • Вопрос задан
  • 356 просмотров
Решения вопроса 1
@700Hp Автор вопроса
Ответ в комментариях:
formData в консоле всегда пустая будет. Это несколько не так работает, как Вы, видимо, ожидаете. Выводите не formData, а formData.get('file')
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы