Ajax с использованием загрузки файлов

Посмотрите на нижеприведенный .js фрагмент, который отправляет upload текстовые данные и прикрепленные ajax-request мультифайлы. content-type='multipart/form-data' устанавливается ajax браузером автоматически, имя javascript файла также автоматически html добавляется к параметру filename FormData webpage (и может быть легко прочитано vanillajs сервером).

async function sendEmail() {
  let formData = new FormData();
  let msg = { message: emailText.value };
 
  formData.append("email", JSON.stringify(msg)); 
  [...attachment.files].map( (file,i) => formData.append("file"+i, file) );

  try {
    await fetch('your/api/upload/email', { method: "POST", body: formData });
    alert("Email was send!");
  } catch(e) {
    alert("Problem with email sending");
  }
}





In this snippet API not exists so exception will be thrown but you can look on your request in:
chrome console> network tab

javascript

html

ajax

upload

2022-09-25T02:27:22+00:00