[英]JavaScript XMLHttpRequest.responseType as "arraybuffer" -- how to get current arraybuffer chunk
[英]Javascript: Sending arrayBuffer using XMLHttpRequest
我想使用XMLHttpRequest發送一個multipart表單。 我要附加的文件是一個jpg文件。 將文件附加到FormData對象可以正常工作。
但我想在發送之前處理圖像文件。 因此,我有一個庫,它將Uint8Array作為輸入和輸出。 所以我將處理后的圖像作為UInt8Array。
我試着用
form.append("picture", new Blob(fileAsArray, {type: "image/jpg"} ));
但它會創建一個八位字節/流。 那么如何通過XMLHttpRequest multipart / form發送Uint8Array,以便服務器看到與發送文件對象時相同的內容?
請注意,該Blob
的構造需要鍵入陣列(或其它來源)作為它的參數的陣列 。 嘗試
form.append("picture", new Blob([fileAsArray], {type: "image/jpg"} ));
可能它不是對問題的直接回應,但是我已經創建了一個函數來將ArrayBuffer作為文件上傳而不是使用XMLHttpRequest,而是使用fetch。
所以這是我的Javascript Fetch版本:
function uploadArrayBufferRawImage(arraybuffer)
{
var formData = new FormData();
formData.append("image",
new Blob([arraybuffer], {type: "image/x-myrawformat-raw"}),
new Date().toJSON() + ".raw");
fetch("scripts/store_image.php", {
method: 'POST',
body: formData
}).then(function(resp)
{
return resp.json();
}).then(function(json)
{
console.log(json);
});
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.