var xhr = new XMLHttpRequest();
xhr.open('GET', 'http://static.reddit.com/reddit.com.header.png', true);
xhr.responseType = 'arraybuffer';
xhr.onload = function(e) {
if (this.status == 200) {
var uInt8Array = new Uint8Array(this.response);
var byte3 = uInt8Array[4];
var bb = new WebKitBlobBuilder();
bb.append(xhr.response);
var blob = bb.getBlob('image/png');
var base64 = window.btoa(blob);
alert(base64);
}
};
xhr.send();
基本上,我在這裏要做的是檢索圖像,並將其轉換爲base64。我們可以直接使用base64對文件/ blob進行編碼(window.btoa()),這樣就可以實現對文件/ blob的編碼。 )或FileReader.readAsDataURL()。「從XHR請求獲取BLOB數據
然而,blob
只是[對象BLOB],而我需要從圖像獲取二進制,所以我可以將其轉換爲Base64和使用數據的img標籤顯示它:
任何人都知道如何實現這個?
預先感謝您!
我覺得很奇怪,你獲取的圖像日期XHR ......它甚至工作交叉起源明智?您的域名在reddit的Access-Control-Allow-Origin列表中? – Rudie
這只是一個例子,實際的域名是localhost –