base64轉(zhuǎn)二進(jìn)制碼流問題

base64轉(zhuǎn)二進(jìn)制碼流問題記錄

在前端項(xiàng)目中苍在,經(jīng)常會(huì)遇到前端使用html2canvas將界面轉(zhuǎn)換成圖片弥鹦,同時(shí)可能會(huì)將截取的圖片傳送到服務(wù)端進(jìn)行保存母怜,此時(shí)會(huì)有一個(gè)問題存在:

html2canvas截取到的圖片為base64編碼掷倔,文件長度非常大啊奄,在傳輸給服務(wù)端進(jìn)行保存時(shí)纬朝,會(huì)存在傳輸上的延遲收叶,所以需要轉(zhuǎn)換成二進(jìn)制碼流進(jìn)行傳輸

具體實(shí)現(xiàn)如下:

    let formData = new FormData();                                  
    let blobData = this.convertBase64UrlToBlob(dataUrl2);           //將base64轉(zhuǎn)換成二進(jìn)制blol流數(shù)據(jù)
    formData.append('file', blobData);                                      //將二進(jìn)制流放入formData中

    

    /**
    * 將以base64的圖片url數(shù)據(jù)轉(zhuǎn)換為Blob
    * @param urlData
    */
    convertBase64UrlToBlob: function(urlData) {
        var arr = urlData.split(','), mime = arr[0].match(/:(.*?);/)[1],
        bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n);
        while (n--) {
            u8arr[n] = bstr.charCodeAt(n);
        }
        return new Blob([u8arr], {type: mime});
    }



用這種方法就可以實(shí)現(xiàn)將base64轉(zhuǎn)換成二進(jìn)制流,然后調(diào)用服務(wù)端接口將圖片傳送到服務(wù)端進(jìn)行圖片可訪問鏈接的生成

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末共苛,一起剝皮案震驚了整個(gè)濱河市判没,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌隅茎,老刑警劉巖澄峰,帶你破解...
    沈念sama閱讀 222,252評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異辟犀,居然都是意外死亡俏竞,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,886評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門堂竟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來魂毁,“玉大人,你說我怎么就攤上這事出嘹∠” “怎么了?”我有些...
    開封第一講書人閱讀 168,814評(píng)論 0 361
  • 文/不壞的土叔 我叫張陵税稼,是天一觀的道長烦秩。 經(jīng)常有香客問我刁赦,道長,這世上最難降的妖魔是什么闻镶? 我笑而不...
    開封第一講書人閱讀 59,869評(píng)論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮丸升,結(jié)果婚禮上铆农,老公的妹妹穿的比我還像新娘。我一直安慰自己狡耻,他們只是感情好墩剖,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,888評(píng)論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著夷狰,像睡著了一般岭皂。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上沼头,一...
    開封第一講書人閱讀 52,475評(píng)論 1 312
  • 那天爷绘,我揣著相機(jī)與錄音,去河邊找鬼进倍。 笑死土至,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的猾昆。 我是一名探鬼主播陶因,決...
    沈念sama閱讀 41,010評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼垂蜗!你這毒婦竟也來了楷扬?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,924評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤贴见,失蹤者是張志新(化名)和其女友劉穎烘苹,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蝇刀,經(jīng)...
    沈念sama閱讀 46,469評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡螟加,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,552評(píng)論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了吞琐。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片捆探。...
    茶點(diǎn)故事閱讀 40,680評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖站粟,靈堂內(nèi)的尸體忽然破棺而出黍图,到底是詐尸還是另有隱情,我是刑警寧澤奴烙,帶...
    沈念sama閱讀 36,362評(píng)論 5 351
  • 正文 年R本政府宣布助被,位于F島的核電站剖张,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏揩环。R本人自食惡果不足惜搔弄,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,037評(píng)論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望丰滑。 院中可真熱鬧顾犹,春花似錦、人聲如沸褒墨。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,519評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽郁妈。三九已至浑玛,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間噩咪,已是汗流浹背顾彰。 一陣腳步聲響...
    開封第一講書人閱讀 33,621評(píng)論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留剧腻,地道東北人拘央。 一個(gè)月前我還...
    沈念sama閱讀 49,099評(píng)論 3 378
  • 正文 我出身青樓,卻偏偏與公主長得像书在,于是被迫代替她去往敵國和親灰伟。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,691評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容

  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴(yán)謹(jǐn) 對(duì)...
    cosWriter閱讀 11,113評(píng)論 1 32
  • 文件上傳時(shí)Web應(yīng)用最為常見的功能之一儒旬,傳統(tǒng)的文件上傳需要定制一個(gè)特殊的form表單來上傳文件栏账,以上傳圖片為例,常...
    ramostear閱讀 1,763評(píng)論 0 1
  • 13.服務(wù)器圖片改了栈源,url沒有變挡爵,需求,服務(wù)器的圖片變了甚垦,就從服務(wù)器加載圖片茶鹃,如果服務(wù)器的沒變,就從本地加載 1...
    AlanGe閱讀 1,163評(píng)論 0 1
  • 每個(gè)文本編輯器都有默認(rèn)的編碼方式(比如 UTF-8 編碼)艰亮,當(dāng)我們保存文檔的時(shí)候闭翩,可以選擇編碼方式,如果沒有特意選...
    _于曼麗_閱讀 1,531評(píng)論 0 1
  • 1.什么是BASE64編碼 BASE64就是一種基于64個(gè)可打印字符來表示二進(jìn)制數(shù)據(jù)的方法迄埃。換句話說疗韵,就是將二進(jìn)制...
    p_in_phd閱讀 656評(píng)論 0 1