1.blob http URL
在編輯器中,有的情況下插入圖片,會講圖片轉成 blob:http://localhost/*** 的這種形式。這種形式的URL實際數據是存放在瀏覽器的內存中。
這種情況下如何讀取這個URL的具體內容呢
點擊查看代碼
async readStreamAndEncodeBase64(url) {
// 發送請求並獲取響應
const response = await fetch(url);
// 獲取響應體的讀取器
const reader = response.body.getReader();
// 創建一個用於存儲Base64編碼的字符串的變量
let base64Data = '';
// 讀取數據流中的數據塊
while (true) {
const { done, value } = await reader.read();
// 如果數據塊讀取完畢,退出循環
if (done) {
break;
}
// 將數據塊轉換爲Base64編碼的字符串,並添加到base64Data變量中
base64Data += btoa(String.fromCharCode.apply(null, new Uint8Array(value)));
}
// 返回Base64編碼的字符串
return base64Data;
}
btoa 方法
這個方法的作用是講二進制數據轉換成base64的數據。
atob 方法
作用是將Base64編碼的字符串轉換爲二進制數據