上传Word文件时出现net::ERR_FAILED错误求助(附代码)
上传Word文件时net::ERR_FAILED错误排查与解决
核心问题排查
- 错误设置请求头:
Access-Control-Allow-Origin是服务器响应头,前端请求中设置该字段完全无效,反而可能干扰浏览器跨域判断,必须删除。 - 防伪造令牌重复传递:你同时在
FormData中追加__RequestVerificationToken,又通过XSRF-TOKEN请求头传递,会导致后端验证逻辑混乱,二者仅需保留一种(ASP.NET场景下优先按后端约定的方式传递)。 - 不必要的跨域配置:若请求地址与当前页面同域(比如
/GenAI/GetDataFromFile是相对路径),crossDomain: true会强制浏览器按跨域方式处理请求,引发额外预检请求,易导致错误,建议删除该配置。 - 后端潜在问题:
- 检查服务器是否配置正确的CORS规则(确为跨域场景时)
- 确认后端是否限制了上传文件大小,Word文件可能超出默认限制
- 验证后端防伪造令牌验证逻辑是否匹配前端传递方式
修改后的代码示例
var formData = new FormData(); var file = $("#myFile")[0].files[0]; var token = $('input[name="__RequestVerificationToken"]', $('#__AjaxAntiForgeryForm')).val(); formData.append('__RequestVerificationToken', token); formData.append("fileUpload", file); $.ajax({ url: '/GenAI/GetDataFromFile', type: 'POST', contentType: false, processData: false, cache: false, data: formData, success: function (response) { alert(response); }, error: function (err) { console.error(err); // 控制台打印更详细的错误信息便于排查 alert(err.statusText); } });
额外排查步骤
- 打开浏览器开发者工具(F12)切换到网络标签,重新发起上传请求:
- 查看失败请求的状态码、响应内容,确认是客户端错误(4xx)还是服务器错误(5xx)
- 检查是否有预检请求(OPTIONS)失败,这通常是CORS配置问题
- 确认后端接口
/GenAI/GetDataFromFile是否正确接收fileUpload参数,且支持multipart/form-data格式请求 - 测试上传小文件是否正常,若小文件可正常上传,说明是后端文件大小限制问题,需修改服务器配置(比如ASP.NET中的
maxRequestLength或RequestSizeLimit)
内容的提问来源于stack exchange,提问作者Sanket R. Patil
相关产品推荐
相关产品推荐

