我目前正在研究使用二進制數據讀取部分XHR響應的可能性。我們目前的方法基於'responseText'屬性和base64編碼。顯然,這遠非最佳。部分XHR響應讀取二進制數據,可能嗎?
如何使用XHR讀取部分Blob/ArrayBuffer響應?當我在Chrome中嘗試時,整個ArrayBuffer/Blob在readyState = 4時可用,但在此之前不可用。
總之,在我看來是:
- 閱讀XHR的responseText屬性:反應可以的readyState = 4前閱讀,我們可以流編碼的二進制數據的base64返回給客戶端
- 閱讀XHR的responseType ='arraybuffer'的響應屬性:沒有部分響應讀取,但整個緩衝區在readyState = 4時可用
我在這裏丟失了什麼嗎?我們可以採取什麼方法來讀取部分二進制響應?
謝謝!這看起來就是這樣做的方式。作爲一個額外的好處,在我們的例子中,我們可以輕鬆地使用標準的XHR請求來支持不支持的瀏覽器。 – bjornl