1

I am trying to upload am xlsx file via Javascript to a C# API. Whenever I call the 'send' below, I get:

  1. A 'Bad Request' response if I leave 'Content-Type' in the header; or
  2. An 'Unsupported Media Type' response if I remove it.

I have looked over numerous articles about how to solve this but nothing has worked.

Javascript function

function uploadFile(file, i) {
  var url = "API POST Route";

  var xhr = new XMLHttpRequest();
  xhr.open("post", url, true);

  // Set appropriate headers
  xhr.setRequestHeader("Content-Type", "multipart/form-data");
  xhr.setRequestHeader("X-File-Name", file.name);
  xhr.setRequestHeader("X-File-Size", file.size);
  xhr.setRequestHeader("X-File-Type", file.type);

//edited with solution from https://stackoverflow.com/questions/6211145/upload-file-with-ajax-xmlhttprequest
  var formData = new FormData();
formData.append("thefile", file);
xhr.send(formData);
}

UPDATE Edited original solution to include FormData() but still getting same errors

0 Answers0