我對這裏發生的事情感到非常驚訝。我使用Preprocess.js調整/壓縮前端圖像。除此之外,在image.onload(第32行)的processfile()函數中,我將toDataURL()字符串轉換爲Blob,所以我可以將它作爲文件對象發送給API。爲此,我使用dataURItoBlob函數。我最終與此:圖片Blob上傳後大於其尺寸的50倍
image.onload = function() {
var resized = resizeMe(image, fileinput, max_width, max_height);
var blob = dataURItoBlob(resized);
eventImages[0] = blob;
}
然後我發送eventImage的內容到API。
現在,這個工程很好。它調整/壓縮圖像,將其發送到API(成功響應),並可以在網頁中看到輸出圖像。
儘管如此,Chrome/Firefox的控制檯(Resources選項卡)中,圖像權重相當大(Chrome中爲8MB,Firefox中爲1.5MB)。更奇怪的是:如果我在網頁中加載圖像,它就像加載的大小一樣加載。但是,如果我從它的API的直接鏈接加載它,它需要一段時間才能加載和顯示(好像它正在加載8MB/1,5MB的數據)。
這是怎麼回事?這一切都在前端?瀏覽器,API或MIME/Content-type有什麼問題嗎?
非常感謝。