首页 > 解决方案 > 通过Javascript将xlsx文件上传到c# API

问题描述

我正在尝试通过 Javascript 将 xlsx 文件上传到 C# API。每当我在下面调用“发送”时,我都会得到:

  1. 如果我在标题中留下“Content-Type”,则会出现“错误请求”响应;或者
  2. 如果我将其删除,则会出现“不支持的媒体类型”响应。

我查看了许多有关如何解决此问题的文章,但没有任何效果。

Javascript函数

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);
}

更新 编辑原始解决方案以包含 FormData() 但仍然出现相同的错误

标签: javascriptc#file-uploadwebapi

解决方案


推荐阅读