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