サイズ "4682933"のjavascript blobを送信し、Base64Stringから変換された "image/png"と入力しようとしています。私はサーバー上の何かを取得することができません。 FormCollectionオブジェクトは常にnullです。ここでBlobファイルを送信するときFormCollectionがnullです
は、クライアントからサーバへの要求を行うための私のコードです:
var formData = new FormData();
formData.append("data", Blobx);
var request = new XMLHttpRequest();
request.open('POST', '/Patient/pdfSavefile');
request.send(formData);
ここでファイルを取得するための私のコントローラのコードです。
public bool pdfSavefile(FormCollection formdata)
{
var data = formdata["data"];
}
は私のWebConfigファイル私はすべてを試してみました
<httpRuntime targetFramework="4.6.2" maxRequestLength="1048576" requestValidationMode="2.0" executionTimeout="10000" />
に以下の持っている、何も実際に動作しません。私はかなりFormCollection
を使用することはありません
function base64ToBlob(base64, mime)
{
mime = mime || '';
var sliceSize = 1024;
var byteChars = window.atob(base64);
var byteArrays = [];
for (var offset = 0, len = byteChars.length; offset < len; offset += sliceSize) {
var slice = byteChars.slice(offset, offset + sliceSize);
var byteNumbers = new Array(slice.length);
for (var i = 0; i < slice.length; i++) {
byteNumbers[i] = slice.charCodeAt(i);
}
var byteArray = new Uint8Array(byteNumbers);
byteArrays.push(byteArray);
}
return new Blob(byteArrays, {type: mime});
}
ですから、ファイルを 'data'の下に' pdfSavefile'にbase64文字列として投稿していますか? – scgough
私が正しく覚えていれば、formdataはconsole.logにコンテンツを表示しません。 – xale94
@scgoughいいえBase64Stringから変換されたBLOBであるペイロードをフォームデータとして投稿しています –