2013-02-05 189 views
0

我收到一個錯誤,試圖通過jQuery Ajax POST請求上傳大於50kB的文件。 我將請求發送到OData服務(ASP.Net MVC應用程序)通過jQuery上傳文件數據時出錯Ajax POST請求

我在瀏覽器控制檯收到的錯誤是「413請求實體過大」

下面是我使用的上傳

代碼
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"); 
    } 
}); 

一)對通過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); 
+0

上傳文件的大小可高達50 MB終於塵埃落定。 – atur

+0

ODATA網址與 相似https://mywebsite.com/api/FileDocuments(1001) 其中FileDocument是一個包含屬性的類 'public Byte [] FileBinaryData {get; set;} public string Description { get; set;}' – atur

+0

即使當我嘗試[鏈接](http://stackoverflow.com/questions/2320069/jquery-ajax-file-upload)我收到類似的問題。 – atur

回答

0

與使用jQuery插件文件上傳