0

我在尝试通过 jQuery Ajax POST 请求上传大于 50kB 的文件时收到错误消息。我将请求发送到 OData 服务(ASP.Net MVC 应用程序)

我在浏览器控制台中收到的错误是“413 Request Entity Too Large”

下面是我用来上传的代码

  var fileData =
        {
            fileBinaryData:  encodedData //file data in encoded format ( 64 bit),
            Description: "my first file"
        };

    fileData = JSON.stringify(fileData);

 $.ajax({
     url: // some odata url ,
     type: "POST",
     data: fileData,
     success: function (res) {
        // do something
     },
     contentType: "application/json",
     beforeSend: function (xhr) {
         xhr.setRequestHeader("Accept", "application/json");
     }
 });

a) 以上代码是通过 jQuery ajax 将文件数据上传到服务的正确方法吗 b) 我已修改我的 web.config 以接受大型请求。c)我不想使用像uploadify之类的插件

编辑 1:我使用 javascripts 的 FileReader() 来读取文件。

 var reader = new FileReader();

    //then applied reader.onloadend method etc
    if (file.webkitSlice) {               
         var blob = file.slice(start, stop + 1);
     } else if (file.mozSlice) {
         var blob = file.mozSlice(start, stop + 1);
     }    
    reader.readAsBinaryString(blob);
4

1 回答 1

0

终于解决了使用 jQuery fileUpload 插件

于 2013-03-01T14:17:22.130 回答